我在磁盘上有一个WSDL文件,并作为Web引用加载.问题是Web引用本身在我的机器上寻找WSDL(使用绝对路径),这显然不适用于队友的机器.
是否可以让Web引用查找具有相对路径的WSDL,或者从Resources文件中查找? WSDL用于我们已修改的第三方服务,以添加一些额外的字段(根据他们的建议).
解决方法
在计算机上向WSDL文件添加服务引用时,它将被复制到项目的“服务引用”文件夹中.此时,您的服务API已确定.创建了一个“Reference.svcmap”(
XML),它保存WSDL文件原始位置的位置.这样,如果API发生更改,您可以更新项目中的服务引用.但是,即使没有原始的WSDL文件,您也可以检查代码,您的团队可以毫无问题地使用它.但是,如果您希望它们能够在API更改时更新服务,那么您需要在公共可访问的位置实际托管该WSDL文件.通常,Web服务本身提供WSDL文件,您不会在文件系统上使用它.如果您计划更新和更改Web服务,则应连接到开发Web服务器上托管的WSDL.这就是它所属的地方,而不是本地文件.但是,在有人试图更新它之前,没有理由你的本地文件引用不会正常工作.如果您的Web服务永远不会改变,那么您就没有问题.如果它可以改变,那么将它托管在某个地方并引用一个真实的URL.
我在Reference.svcmap文件中调整XML以尝试相对路径引用的初步测试不起作用,但是如果您确定要在问题描述的情况下让它工作,那么这就是您尝试的地方.