当我们Add Service Reference,Visual Studio创建xsd文件如下:
与wsdl和.svcmap文件一起使用.
在后续的更新,使用Update Service Refernce,而不是更新上述文件VS 2010继续添加更多的与多个文件附加自己的名字..
这会在连续集成环境中的签入文件和预定构建失败时产生麻烦.:-(编码方面没有任何错误.
你如何处理这种情况?我们Visual Studio可以强制更新现有文件吗?
我更喜欢使用 svcutil 来生成元数据 (wsdl+xsd) 和生成代理代码。
它的好处是没有“幕后魔法”发生;您可以看到并控制各个方面。
创建一个 cmd 文件以获取服务的 WSDL+XSD。每当您的服务接口发生更改时,请运行 cmd。将生成的 wsdl 和 xsd 文件添加到源代码管理中,就像处理任何其他外部依赖项(例如第 3 方 dll)一样。Svcutil 可以从 URL 中提取元数据,或者如果您还有实现该服务的程序集,则可以从 .net dll 中提取元数据。
创建用于(重新)生成代理代码的 cmd 文件。每当服务元数据发生更改时就运行它。将生成的 .cs 文件添加到您的项目中。
cmd 文件看起来像这样。你可以定义命名空间映射、序列化器、集合使用等。查看 svcutil 的帮助。
svcutil.exe .\References\MyService\*.wsdl .\References\MyService\*.xsd /namespace:*,MyNamespace /out:.\Source\MySubfolders\MySeviceProxy.cs /serializer:DataContractSerializer /ct:System.Collections。通用列表`1
| 归档时间: |
|
| 查看次数: |
2693 次 |
| 最近记录: |