我有一个(可能是常见的)情况,我希望在我的silverlight应用程序(SL4,WCF RIA,EF4,Linq-to-Entities)中重复使用同一个类来添加新实体和编辑现有实体。添加新的时,我希望我的自定义验证器检查唯一性,如果它不是唯一的则会失败。但是,在编辑时,我不希望使用相同的验证器来阻止编辑。有没有办法暂时关闭单个字段的验证(理想情况下,通过验证类型,以便其他验证器仍然可以在同一个字段上运行)?
答案 0 :(得分:1)
您可能需要在此处查看ValidationContext功能。您可以拥有基于实体属性或您要提供的任何其他状态做出决策的验证属性。
查看关于提供ValidationContext和使用ValidationContext的博文:
http://jeffhandley.com/archive/2010/10/25/RiaServicesValidationContext.aspx
http://jeffhandley.com/archive/2010/10/25/CrossEntityValidation.aspx
希望这有帮助,
杰夫