【发布时间】:2010-01-11 23:18:52
【问题描述】:
我们目前有几个 WCF 服务直接通过网络公开我们的域模型。换句话说,我们没有一层 DTO 来映射我们的域和服务层。我别无选择,只能用 [DataContract] 和 [DataMember] 直接装饰我们的域对象。我想在网络上公开的所有域对象上实现 IExtensibleDataObject。有人认为在基类上实现 IExtensibleDataObject 有什么问题吗?所以我会:
[DataContract]
public EntityBase:IExtensibleDataObject{///IExtensibleDataObject Impl}
[DataContract]
public Person:EntityBase{}
[DataContract]
public Employee:Person{}
提前致谢
【问题讨论】:
-
您的代码应该可以正常工作。事实上,如果您查看 svcutil 生成的代码,您会看到与您的代码一模一样的代码。查看此链接了解更多信息:msdn.microsoft.com/en-us/library/…
标签: wcf inheritance versioning