Я просто пытаюсь выяснить, есть ли простой способ хранить и извлекать двоичные (файловые) данные с помощью EF Code First CTP 5? Мне бы очень хотелось, чтобы он использовал тип FILESTREAM, но на самом деле я просто ищу способ заставить его работать.
источник
Просто объявите свою собственность как byte [], как упомянул Ладислав.
public class Product { public int Id { get; private set; } public string Name { get; set; } public byte[] ProductImage { get; set; } }
Это почти все. Если вы не сопоставляете свойство, по соглашению оно отображается на
varbinary(max)
. Если у вас есть столбец изображения в базе данных, просто добавьте[Column(TypeName = "image")]
свойство ProductImage или если вы предпочитаете сопоставление кода, добавьте это в свое переопределение OnModelCreating в классе контекста:Проблема, с которой я столкнулся, заключается в том, что я не нашел способа сделать свойство ленивым, поскольку мне не обязательно загружать двоичные данные каждый раз, когда я получаю продукт. Я не уверен, что правильно помню, но NHibernate может сделать это из коробки.
источник