Silverlight 3验证MVVM WCF EF

时间:2009-07-09 10:20:23

标签: wcf entity-framework silverlight-3.0 mvvm

我的应用程序是SL2通过WCF公开的实体框架模型读取和写入数据。由于来自SL3的新验证控件已经过时,我们拒绝编写任何UI验证。

...但是,在昨天对我们的项目进行试用更新后,我们意识到,当从EF模型创建对象时,大多数将验证属性附加到业务对象的标准做法都不能轻易应用。

有没有人有类似的经历,如果是这样,你是如何解决这个问题的?

谢谢, 标记

1 个答案:

答案 0 :(得分:1)

你是对的,你有两个选择。

  1. 在模型或视图模型中,根据MVVM的实现,在属性的setter中,在那里进行一些验证,如果出现问题则抛出异常,然后在数据绑定中使用SL3 ValidatesOnException属性在每个被验证的控件的视图上。

  2. 使用MetaDataClasses为您现有的域模型提供插件功能


  3. [MetadataClass(typeof(MyMetadataClass))]
    public partial class MyClass
    {
      public int MyProperty { get; set; }
    }
    
    public class MyMetadataClass
    {
      [Range(1,100)]
      public int MyProperty{ get; set; }
    }