我正在使用 Asp.Net MVC 4 中的 Entity Framework 测试脚手架(通过遵循本文)。我让它工作正常,除了即使我的域对象在字段中允许 null 并且数据库字段允许 null 我收到错误消息:
无法将值 NULL 插入列“IsSuccessful”、表“MyTestProject.Persistence.TestContext.dbo.Prediction”;列不允许空值。更新失败。该语句已终止。
我的域对象如下所示:
public class Prediction
{
[Key]
public int Id { get; set; }
[Required]
public string Title { get; set; }
[Required]
public string Description { get; set; }
public bool? IsSuccessful { get; set; }
}
生成的网页将 IsSuccessful 显示为带有 NotSet、True 和 False 选项的下拉框。在数据库中,IsSuccessful 列允许为空。我仍然收到错误消息。如果我选择 True 或 False(它已正确保存在数据库中),一切正常,但当我选择 NotSet 时则不行。
肯定有办法解决这个问题吗?
一些细节:
- 视觉工作室 2012 RC
- ASP.NET MVC 4
- EntityFramework.dll 版本 5.0.0.0