8

我有一个嵌入在我们的应用程序中的报表服务器的 Web 参考。不过,报告所在的服务器可能会发生变化,如果有必要,我希望能够“即时”更改它。

我知道我以前做过,但似乎不记得是怎么做的。谢谢你的帮助。

我暂时手动解决了这个问题。在代码中设置 URL 并不是什么大问题,但我想弄清楚在 VS 2008 中这样做的“正确”方式是什么。任何人都可以提供任何进一步的见解吗?谢谢!


VS2008中,当我将 URL Behavior 属性更改为 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看起来我有一个设置对象,我可以在其上以编程方式设置属性,但我需要提供检索逻辑该 URL 来自 web.config。

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

编辑#2

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

4

2 回答 2

3

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

请参阅: http: //www.codeproject.com/KB/XML/wsdldynamicurl.aspx

于 2008-08-07T19:22:25.983 回答
0

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

编辑:啊,谢谢 bcaff86。我不知道你可以通过更改属性来做到这一点。

于 2008-08-07T19:22:36.123 回答