这个问题与在 Visual Studio 2012 中创建的新类库项目有关。
我已将 SQL Server View 添加到我的 Entity Framework 模型中。
在 PromisedDate
列的属性中,我已将 Nullable 从 (None)
更改为 False
,因为永远不会有空值返回此列。我已经用 select 语句仔细检查过没有空值。
但是,即使在保存之后,关闭 Visual Studio 中所有打开的选项卡并完全清理和重建解决方案,PromisedDate
仍然是一个 DateTime?
并且我必须在代码中继续使用 .Value
来获取它的值。
真令人沮丧,我做错了什么?!
这是生成的 .CS 文件的屏幕截图:
最佳答案
您应该执行以下步骤。
1) 保存设计器文件并从设计器生成数据库
2) 单击上下文文件和代码生成文件(T4),然后单击运行自定义工具。
3)确保再次保存文件,生成数据库后会出现*。
关于c# - Entity Framework : Set nullable to false, 但类型仍可为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13070683/