我正在使用多个第三方with服务(来自同一供应商),它们似乎使用相同的对象结构服务器端。其中一个服务允许我按角色查询用户列表,另一个服务允许我按ID查询单个用户。为了让这项服务以最好的方式工作,从两个服务返回的用户需要能够互换使用。
输入wsdl.exe。我知道/sharetypes做了我想让它做的事情,然而,当我生成我的代理时,仍然有多个版本的对象(即Person、Person1等)。
我正在执行的命令如下:
wsdl.exe /sharetypes /language:VB http://mbptest2.seniormbp.com:8080/SeniorSystemsWS/UserManagementService.asmx?wsdl http://mbptest2.seniormbp.com:8080/SeniorSystemsWS/DataExportService.asmx?wsdl http://mbptest2.seniormbp.com:8080/SeniorSystemsWS/UserProfileService.asmx?wsdl
发布于 2009-07-21 20:51:51
DataExportService的架构将tns和目标命名空间定义为http://www.senior-systems.com/。UserProfileService的架构将tns和目标命名空间定义为http://senior-systems.com/。
它们是不同的,即使它们在用作URL时恰好解析到同一个web服务器。XML命名空间是按文本进行比较的,而不是根据URL语法进行比较的。例如,http://senior-systems.com/和http://senior-systems.com可能是两个不同的名称空间(提示:其中一个缺少尾随的斜杠)。
发布于 2009-01-28 21:53:27
根据MSDN documentation的要求,名称空间、名称和网络签名在所有服务中都必须相同。有些地方看起来它们不匹配,所以这是一个很好的开始寻找的地方。
https://stackoverflow.com/questions/489542
复制相似问题