MVC FoolProof验证在调用SaveChange方法时显示异常

时间:2015-10-19 09:35:49

标签: entity-framework asp.net-mvc-4 foolproof-validation

这个问题可能听起来重复,但我对任何答案都不满意,因为有些人建议MVC Foolproof validaiton有条件的验证,有些人告诉它不适用于实体框架

我在我的项目中使用MVC Foolproof RequiredIf validation。它在客户端运行良好,验证也在服务器端工作。

 [RequiredIf("STCompulsory",Operator.EqualTo,true,ErrorMessage="Please enter Registration No")]
    public string STRegNo { get; set; }

但是当我呼叫db.Savechanges()插入数据时,异常即将来临

An unexpected exception was thrown during validation of 'STRegNo' when invoking 
Foolproof.RequiredIfAttribute.IsValid. See the inner exception for details.

的InnerException

The method or operation is not implemented.

1 个答案:

答案 0 :(得分:1)

您不需要Operator.EqualTo参数,只需

即可
[RequiredIf("STCompulsory", true, ErrorMessage="Please enter Registration No")
public string STRegNo { get; set; }

你是对的,因为万无一失的[RequiredIf]属性确实存在一些EF问题,我们会在this work issue中详细讨论(以及一些建议的更改)。

最简单的解决方案是在视图中使用视图模型而不是数据模型,并将该属性应用于视图模型属性。