我正在努力解决如何将 URL 配置为 Web 引用。
情况就是这样。我有:
旧的 asp.net webservices <----- 编译为 dll 的 c# 项目 <----- 引用 dll 的网站(以前不存在 c# 项目,但我将所有代码重构为一个单独的项目)
所以网站代码调用c#项目的代码来获取结果,结果又调用了webservice。
在 c# 项目中添加 Web 引用时,我输入了 Web 服务的 url 位置( http://192.168.10.1/TestServices.asmx?wsdl 。然后生成一个包含 Web 服务 url 的 app.config 文件。
如果我将 Web 引用设置为静态而不是不应使用配置,那是有效的。现在,如果我将 web 引用设置为动态,则应该使用配置,但由于这是一个正在编译为 dll 的项目,并且网站没有 app.config,而是我将 app.config 中的配置设置为我的web.config appSettings 节点,我将 Web 服务的 url 更改为另一个( http://192.168.10.2/TestServices.asmx 。
该网站仍然从在 c# 项目中添加 Web 引用时指向的旧 URL 获取结果,因此当 URL 行为设置为动态时,看起来配置设置没有被使用。
我可能在这里遗漏了一些微不足道的东西吗?
这是 app.config 中的内容:
<applicationSettings>
<XXXX.Properties.Settings>
<setting name="XXXX_TestServices_TestServices" serializeAs="String">
<value>http://192.168.10.1/TestServices.asmx</value>
</setting>
</XXXX.Properties.Settings>
</applicationSettings>
这就是我放在 web.config 中的内容:
<appSettings>
<add key="XXXX_TestServices_TestServices" value="http://192.168.10.2/TestServices.asmx" />
</appSettings>
所以,现在在输入问题以及仔细检查和搜索相关问题时,它总是很有趣和信息丰富/有教育意义,你终于自己解决了这个问题。无论如何我都会发布它并附上答案,因为我没有找到确切的答案放置,但通过结合其他 2 个问题和博客文章。
最佳答案
一些资源提到您需要创建一个设置并且需要在您的代码中更改 Web 服务代理对象的 url 属性。这不是必需的,您只需要以正确的方式编辑您的网络配置。
该 url 不会像直接从网站引用 Web 服务时那样进入 web.config 的 appSettings 部分。
相反,您需要从您的 dll 项目中生成的 app.config 复制整个配置代码,包括定义用于设置正确 url 的 applicationSettings 节点的 sectiongroup 配置。
对于这个在 web.config 中包含以下配置代码的特定示例:
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="XXXX.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
...
</configuration>
<applicationSettings>
<XXXX.Properties.Settings>
<setting name="XXXX_TestServices_TestServices" serializeAs="String">
<value>http://192.168.10.2/TestServices.asmx</value>
</setting>
</XXXX.Properties.Settings>
</applicationSettings>
关于web-services - 网页引用配置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12624640/