WCF DataContracts中的INotifyPropertyChanged

时间:2011-07-05 17:24:46

标签: c# wpf wcf asp.net-mvc-3 inotifypropertychanged

我正在制作一些WCF服务,而一些消费者是Prism Apps。

为了避免将DataContract类复制到客户端类,他们希望合同支持INotifyPropertyChanged。

但是,我有一些客户端是MVC3客户端。

对数据合同添加INotifyPropertyChanged支持会搞砸吗?

另外,我打算让我的DataContracts也成为我的Entity Framework数据库连接中的POCO对象。 INotifyPropertyChanged会搞砸了吗?

或者INotifyPropertyChanged只是一个WPF的东西而其他应用程序不会关心它?

2 个答案:

答案 0 :(得分:9)

  

或者INotifyPropertyChanged只是一个WPF的东西而其他应用程序不会关心它?

INotifyPropertyChanged只是一个可以在您的实体上实现的界面,而不会弄乱任何东西。它主要用于WPF和Silverlight,它不会对不使用它的其他技术产生影响。因此,在WCF数据协定上实现它不应该有任何问题。虽然请注意,当您从此WCF服务生成强类型客户端代理(使用svcutil.exe或添加服务引用)时,生成的实体将不会实现此接口。他们将是POCO。

答案 1 :(得分:1)

另一种选择是在WPF应用程序中使用MVVM。 DataContract将是Models(M),WPF应用程序的开发人员必须创建ViewModel。

ViewModel必须实现INotifyPropertyChanged并从模型加载其数据。