1)我知道当我们想要使用现有的WCF服务时,会在客户端生成WSDL文件。这是因为我们在Visual Studio中使用“添加服务引用...”选项。我不明白的是 - 当我们使用客户端代理调用WCF服务时,在什么时候使用了确切的WSDL文件?
2)我不知道在创建WCF服务的过程中如何使用或连接或附加存在于内存中的WSDL。我的意思是我应该写什么?类似的东西:
Uri mexAddress = new Uri("http://localhost:2240/Service1.svc?wsdl");
或:
Uri mexAddress = new Uri("http://localhost:2240/Service1.svc?" + SomeName.wsdl);
或:
?
提前谢谢。
戈兰
答案 0 :(得分:1)
1)我知道我们希望在客户端生成WSDL文件 使用现有的WCF服务。这是为了我们使用“添加服务” 参考...“Visual Studio中的选项。我不明白的是 - 在 我们在使用客户端代理时使用的确切WSDL文件到底是什么时候 调用WCF服务?
不,wsdl是在服务器端生成的。它是基于XML的文档,描述了一个服务。它指定服务的位置以及服务公开的操作或方法。添加服务引用时,Visual Studio(或svcutil)仅保存此wsdl的副本以生成客户端代理。 wsdl将永远不会在该代之后使用,并且不会嵌入到资源中。您也可以在没有wsdl的情况下创建客户端代理。
2)我不知道如何在内存中使用或连接或附加现有内容 WSDL在创建WCF服务的过程中。我的意思是我应该怎么做 写?
不清楚。你什么意思 ?在服务器端,当您激活元数据的展示时,WCF将自动管理WSDL创建(它也是可扩展的)。
答案 1 :(得分:0)
在运行时,客户端不使用WSDL来调用服务。它仅在设计时用于生成客户端代理代码以调用服务。