1
我想知道在创建公共嵌套/内部WCF类(DataContracts)后是否存在任何问题。如果是,那么这些问题是什么。WCF中的嵌套/内部类?
(我的一位同事在互联网上看到了一些关于这些问题的东西,但它们看起来特定于某些情况,而且我们没有找到明确的'是的,它会工作'或'没有,嵌套类不起作用在WCF',因此我的猜测是他们通常工作。)
我想知道在创建公共嵌套/内部WCF类(DataContracts)后是否存在任何问题。如果是,那么这些问题是什么。WCF中的嵌套/内部类?
(我的一位同事在互联网上看到了一些关于这些问题的东西,但它们看起来特定于某些情况,而且我们没有找到明确的'是的,它会工作'或'没有,嵌套类不起作用在WCF',因此我的猜测是他们通常工作。)
数据合同构成您的服务公开的API的一部分。尽管在代码中由纯CLR类表示(虽然用属性装饰) - 不要被愚弄 - 它们会真正被串行化到字符串中供客户端/服务器使用。因此,从面向服务的观点来看,我们必须摆脱诱惑,将它们与面向对象的概念联系起来。
使用继承,接口抽象和嵌套类都处理面向对象的概念(多态性,抽象和访问),即使这些技术上在WCF中有些技术上是可行的(例如通过KnownTypes
属性) - 仅仅因为你可以做些什么 - 这并不意味着你应该。
我毫不怀疑有一些方法可以实现正确的序列化行为,以使WCF识别嵌套类。但是,如果这样做,我怀疑你正在违背面向服务的方针 - 因此不会使用面向服务架构的全部功能。
你的意思是继承类吗? –
否'嵌套类'='内部类',http://en.wikipedia.org/wiki/Inner_class – TTT