如何从 Visual Studio 2008 中的配置文件中提取 ASP.NET Web 引用的 URL?

StackOverflow https://stackoverflow.com/questions/5188

  •  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.a​​spx 看起来我有一个设置对象,我可以在其中以编程方式设置属性,但我需要提供从 web.config 检索该 URL 的逻辑。

这是 VS2008 中执行此操作的新标准方法,还是我遗漏了什么?

编辑#2

这里有人有什么想法吗?我在我的应用程序中绕过了它,然后自己将 URL 放入我的 web.config 中并读出它。但我对此并不满意,因为我仍然感觉自己错过了一些东西。

有帮助吗?

解决方案

在属性窗口中将“行为”更改为动态。

看: http://www.codeproject.com/KB/XML/wsdldynamicurl.aspx

其他提示

如果您指的是 VS2005“Web 参考”,则生成的代理类具有一个 URL 属性,该属性是该服务的 SOAP 端点 url。您可以更改此属性并让后续的 http 通信与该新端点进行。

编辑:啊,谢谢bcaff86。我不知道你可以通过简单地改变财产来做到这一点。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top