MVC模型类应该使用什么数据类型来支持/表示Image类型的数据库列?

时间:2013-04-04 23:33:02

标签: c# entity-framework image-processing asp.net-mvc-4 types

在与“编程剃刀”一起玩的时候,我遇到了一个难题。如果我有一个包含这些列的表:

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)只是猜测,充其量。

1 个答案:

答案 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属性。