您可以动态地在代码中从wsdl文件生成代理对象吗?
我知道我可以使用工具wsdl.exe,但我希望有一个基于URL的代码下载wsdl,并在代码中生成代理对象。
客户端使用C#,Web服务使用Java。
答案 0 :(得分:0)
Wsdl.exe使用System.Xml和System.Web.Services中的框架类来实现其魔力。但是,除非您特别了解班级名称,否则这些班级很难找到并且很难找到使用谷歌搜索。
一个好主意是查看Mono的wsdl.exe源代码:http://c-cpp.r3dcode.com/files/mono/2/10.2/mcs/tools/wsdl/MonoWSDL2.cs
这将使您获得存根代码。
编辑:John认为asmx是遗留的,而svcutil是要走的路。如果你问我,SOAP本身就是遗产,REST就是你要走的路。但由于问题是SOAP和svcutil被认为是一种更好的技术,所以svcutil的工作原理如下:
http://c-cpp.r3dcode.com/files/mono/2/10.2/mcs/tools/svcutil/Driver.cs