首先使用ef模型在mvc3 app中进行客户端验证之前发生约束异常

时间:2011-09-09 18:29:39

标签: asp.net-mvc entity-framework

我是MVC& EF,但是当我测试客户端验证时,我得到一个“ConstraintException此属性不能在特定实体上设置为空值”。我从现有的数据库中生成了ef模型。有问题的表(ItemTypes)有一个主键,在其他2个表(分别是Items和ItemTypeAttributes)中引用。

如果我在填写任何字段后尝试创建一个项目,我将启动客户端验证,文本框变为红色,我得到正确的验证消息。现在,如果我尝试创建一个没有输入名称的ItemType,我会得到ConstraintException,然后在Visual Studio中点击简历后,我看到了客户端验证错误消息和红色文本框。

消息说放松或关闭数据集中的约束,请确保您没有尝试为主键字段分配值...并在从视图状态加载数据集之前清除数据集。

请告知。

- 编辑---大约20分钟后我决定从db中删除外键约束并从数据库更新模型。这有效,但这不是我最终想要的。我希望表之间具有参照完整性。所以我可以继续测试应用程序的其他部分,但我确信我的架构中还有其他关系,我会遇到类似的问题。

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,经过进一步调查后,我可以通过确保我的实体中的属性设置为可为空来解决此问题。

有关详细信息,请参阅my答案。