在与“编程剃刀”一起玩的时候,我遇到了一个难题。如果我有一个包含这些列的表:
ID int
Title nvarchar
Body nText
Photo Image
......如何声明相应的MVC Model类?我有:
public class BlogPost
{
public long ID { get; set; }
public string Title { get; set; }
public string Body { get; set; }
public Byte[] FauxToe { get; set; }
}
...但是图像的字节数组(可能是jpg或png)只是猜测,充其量。
答案 0 :(得分:3)
这可能不是完美的答案,但我只是想帮忙。根据J.Lerman的编程实体框架DbContect,这应该用于存储图像...
[Column(TypeName = "image")]
public byte[] Photo { get; set; }
但是,首先是代码,在生成数据库之后,列的类型是...... varbinary(MAX)。
这是从其他书籍编程实体框架:代码优先,其中创建了架构。
提供给Column注释的参数特定于 要映射到的数据库。我们希望将Photo存储在SQL中 服务器图像字段。只要有可能强制使用的类型 对于您指定的数据库数据类型的属性(例如,强制a byte []到图像),您可以配置数据类型。
但正如我所说,它没有映射到图像类型,而是映射到varbinary(MAX)
关于其他字段,您尝试将int映射为带ID的long。确保正确调用表或使用Table属性。