我的理解: AFAIK,IValidatableObject和IValidator接口验证模型并帮助显示验证错误。 IValidatableObject()的validate()方法返回一个IEnumerable,以便我们可以使用yield返回模式进行多次验证并显示验证结果。 IValidator的Validate()方法具有void返回类型,而且基本上它设置了IsValid属性和ErrorMessage属性。我想我们也可以在这里进行多次验证,但是ErrorMessages必须连接成一个属性。
我还缺少其他差异/用例吗?
P.S。 This是我遇到的一个有趣的想法,但这是一个自定义界面,而不是.Net提供的东西。但是,我只关心.Net默认提供什么。