我相信这肯定是一个很常见的问题。我有两个WCF服务,基本上将标准访问和管理访问暴露给一个更大的服务。从WCF服务转换类型
每种服务都有类似的方法Foo
。 Foo
需要在我的服务中定义的TemplateInfo
类型的参数。
在我的客户端,我参考了Client
和AdminClient
。 Client.Foo(TemplateInfo)
预计Client.TemplateInfo
,而AdminClient.Foo(TemplateInfo)
预计AdminClient.TemplateInfo
。我知道一旦服务达到Client.TemplateInfo
和AdminClient.TemplateInfo
是同样的事情。
我想弄清楚如何实例化TemplateInfo和/或强制它使用客户端和管理方法。有相当数量的代码来创建这个对象,所以我希望不要为每种类型重复。
类型是在共享程序集中定义的,我在代理中使用“重用类型”。但是我得到了两种不同的类型,因为我有两个服务引用。
这样做会很棒,就像(AdminClient)TemplateInfo,但也许我会创建一个克隆方法来转换类型。
谢谢,最后一个注释是我的场景中的关键。我已经在两项服务中引用了它。 – earthling 2011-03-17 01:10:08
@John,你能帮忙吗这里http://stackoverflow.com/questions/43506726/wcf-deserializing-choosing-type-in-depends-on-some-field-once-and-for-all-de请吗? – 2017-04-20 16:24:33