Wie ruft man die URL für eine ASP.NET-Webreferenz aus einer Konfigurationsdatei in Visual Studio 2008 ab?
-
08-06-2019 - |
Frage
Ich habe eine Webreferenz für unseren Berichtsserver in unsere Anwendung eingebettet.Der Server, auf dem die Berichte gespeichert sind, könnte sich jedoch ändern, und ich würde ihn bei Bedarf gerne „on the fly“ ändern können.
Ich weiß, dass ich das schon einmal gemacht habe, kann mich aber nicht erinnern, wie.Vielen Dank für Ihre Hilfe.
Ich habe dies vorerst manuell umgangen.Es ist keine große Sache, die URL im Code festzulegen, aber ich würde gerne herausfinden, wie dies in VS 2008 „richtig“ gemacht wird.Könnte jemand weitere Erkenntnisse liefern?Danke!
In VS2008 Wenn ich die Eigenschaft „URL-Verhalten“ in „Dynamisch“ ändere, wird in der Referenzklasse automatisch der folgende Code generiert.
Kann ich diese Einstellung (MySettings) in der web.config überschreiben?Ich glaube, ich weiß nicht, wie die Einstellungen funktionieren.
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
BEARBEITEN
Daher hat sich dieses Zeug seit VS03 ein wenig geändert (das war wahrscheinlich die letzte VS-Version, mit der ich das gemacht habe).
Entsprechend: http://msdn.microsoft.com/en-us/library/a65txexh.aspx Es sieht so aus, als hätte ich ein Einstellungsobjekt, für das ich die Eigenschaft programmgesteuert festlegen kann, aber ich müsste die Logik bereitstellen, um diese URL aus der web.config abzurufen.
Ist dies die neue Standardmethode in VS2008 oder übersehe ich etwas?
BEARBEITEN Nr. 2
Hat hier jemand irgendwelche Ideen?Ich bin in meiner Anwendung darum herumgefahren und habe die URL einfach selbst in meine web.config eingefügt und vorgelesen.Aber damit bin ich nicht zufrieden, weil ich immer noch das Gefühl habe, etwas zu verpassen.
Lösung
Ändern Sie im Eigenschaftenfenster das „Verhalten“ auf „Dynamisch“.
Sehen: http://www.codeproject.com/KB/XML/wsdldynamicurl.aspx
Andere Tipps
Wenn Sie eine VS2005-„Webreferenz“ meinen, verfügen die generierten Proxyklassen über eine URL-Eigenschaft, die die SOAP-Endpunkt-URL dieses Dienstes ist.Sie können diese Eigenschaft ändern und Ihre nachfolgenden HTTP-Kommunikationen an diesen neuen Endpunkt senden lassen.
Bearbeiten:Ah, danke bcaff86.Ich wusste nicht, dass man das einfach durch eine Änderung einer Immobilie erreichen kann.