<p>我试图通过添加服务引用它消耗在类库的WCF服务。在类的图书馆之一它得到正确的消费,我可以为了生成代理了他们的访问客户端类型。然而,在我的第二个类库(甚至在控制台测试程序),当我添加相同的服务引用,它只是暴露了所涉及的承包经营,而不是客户端类型对我产生针对代理的类型。 P> </p><p>例如。端点有2个服务公开 - ISvc1和ISvc2。当我在头等舱库中添加一个服务引用此终结点,我得到ISvc1Client ANDF ISvc2Client,以便通过使用这些2合同公开的操作生成代理过的。除了这些客户服务引用还公开参与行动,如类型(1型,2型等),这正是我需要的。然而,当我尝试添加服务引用到另一个控制台应用程序或类库相同endpoing只有1型,2型等外露,不ISvc1Client和ISvc2Client因其中我不能生成一个代理来访问我所需要的操作。我无法确定为什么服务引用才能正确生成一个类库,但不是在其他或测试控制台应用程序。 p>
</p>
<p>您可能已经选择 但没有被选中的非常重要的 库。 P> </p><p>首先单击“显示所有文件”在您的解决方案管理器的顶部,这样可以扩大了服务的参考。 P> </p><p> <img p:="" src="“htt"/> P> </p><ul> <li>找到了 文件并打开它。 li> </li><li>搜索 在源代码,以确保你真的没有产生跟你没想到一个名字的客户机。如果你觉得那么这就是你的服务客户端的名称。 li> ul> <p> <img p:="" src="“htt"/> P> </p><p>如果没有匹配项,然后右键单击服务引用,并选择 P> </p><p>重要的一项就是<strong> STRONG>这是需要正确生成客户端。我喜欢选择 也获得不错的Linq类,比如 不 P> <p> <img p:="" src="“htt"/> P> </p><p>真正的答案是,如果你正在使用序列化的KnownTypeAttribute您的服务合同上的一个类型,您必须在您要添加的服务参考项目到你的类型的库的引用。 P> </p><p>例如,如果您的WCF服务序列化类型System.Drawing.Image对象,那么消费者的项目必须有System.Drawing中的参考。希望这有助于一些人在那里。 P>
</p></strong></p></li></ul>