如何从 Visual Studio 2008 中的配置文件中提取 ASP.NET Web 引用的 URL?
-
08-06-2019 - |
题
我的应用程序中嵌入了报表服务器的网络参考。不过,报告所在的服务器可能会发生变化,并且我希望能够在必要时“即时”更改它。
我知道我以前做过这个,但似乎不记得是怎么做的。感谢您的帮助。
我暂时手动解决了这个问题。在代码中设置 URL 并不是什么大问题,但我想弄清楚在 VS 2008 中执行此操作的“正确”方法是什么。有人可以提供任何进一步的见解吗?谢谢!
在 VS2008 当我将 URL Behaviour 属性更改为 Dynamic 时,我会在 Reference 类中自动生成以下代码。
我可以覆盖 web.config 中的此设置 (MySettings) 吗?我想我不知道这些设置是如何工作的。
Public Sub New()
MyBase.New
Me.Url = Global.My.MySettings.Default.Namespace_Reference_ServiceName
If (Me.IsLocalFileSystemWebService(Me.Url) = true) Then
Me.UseDefaultCredentials = true
Me.useDefaultCredentialsSetExplicitly = false
Else
Me.useDefaultCredentialsSetExplicitly = true
End If
End Sub
编辑
所以自 VS03(这可能是我用来执行此操作的最后一个 VS 版本)以来,这个东西已经发生了一些变化。
根据: http://msdn.microsoft.com/en-us/library/a65txexh.aspx 看起来我有一个设置对象,我可以在其中以编程方式设置属性,但我需要提供从 web.config 检索该 URL 的逻辑。
这是 VS2008 中执行此操作的新标准方法,还是我遗漏了什么?
编辑#2
这里有人有什么想法吗?我在我的应用程序中绕过了它,然后自己将 URL 放入我的 web.config 中并读出它。但我对此并不满意,因为我仍然感觉自己错过了一些东西。
解决方案
在属性窗口中将“行为”更改为动态。
其他提示
如果您指的是 VS2005“Web 参考”,则生成的代理类具有一个 URL 属性,该属性是该服务的 SOAP 端点 url。您可以更改此属性并让后续的 http 通信与该新端点进行。
编辑:啊,谢谢bcaff86。我不知道你可以通过简单地改变财产来做到这一点。