我正在制作一些WCF服务,其中一些消费者是棱镜应用程序。
为了避免将DataContract类复制到客户端类,他们希望契约支持INotifyPropertyChanged。
但是,我有一些客户端是MVC3客户端。
在数据契约中添加INotifyPropertyChanged支持会把它们搞乱吗?
另外,我计划让我的DataContracts也成为我的实体框架数据库连接中的POCO对象。INotifyPropertyChanged会把事情搞砸吗?
或者INotifyPropertyChanged只是一个WPF的东西,其他的应用程序不会关心它?
发布于 2011-07-06 01:27:31
或者INotifyPropertyChanged仅仅是一个WPF的东西,其他的应用程序不会关心它吗?
INotifyPropertyChanged只是一个接口,你可以在你的实体上实现,而不会弄乱任何东西。它主要与WPF和Silverlight一起使用,它不会对其他不使用它的技术产生影响。所以在你的WCF数据契约上实现它应该不会有任何问题。但请注意,当您从此WCF服务生成强类型的客户端代理时(使用svcutil.exe或Add service Reference),生成的实体将不会实现此接口。他们将会是POCO。
发布于 2011-07-06 12:44:57
另一种选择是在WPF应用程序中使用MVVM。DataContract将是模型(M),并且WPF应用程序的开发人员将必须创建ViewModel。
ViewModel必须实现INotifyPropertyChanged,并将从模型加载其数据。
https://stackoverflow.com/questions/6586481
复制相似问题