如何告诉Entity Framework视图中的列可以为空?

Rya*_*ill 5 .net entity-framework

我有一个视图,该视图具有一个Int列,该列可以为空(将其称为StackOverflowCount)。从数据库生成EF模型时,EF设计器不会将其识别为可为空,而是将列创建为Int。

我的问题是,在EF设计器上,我已将列设置为Nullable,然后出现以下错误,这将终止编译;

Error 3031: Problem in mapping fragments starting at line 2327:
Non-nullable column MyView.StackOverflowCount in table MyView
is mapped to a nullable entity property.
Run Code Online (Sandbox Code Playgroud)

我可以通过以XML模式打开.edmx文件并手动编辑SQL列定义来解决此问题,但是无法使用设计器来做到这一点,下次我从数据库中的模型刷新时,它会被覆盖。

这是“设计使然”还是进入EF 4.0的示例?我在VS 2010下使用带有EF 4.0的.Net 4.0。

Shi*_*iji 1

EF 有很多设计器中没有的功能。

这与其说是“设计使然”,不如说是他们没时间了。

VS2010中EF有几处改进,参见http://msdn.microsoft.com/en-us/data/ee720194.aspx