2009-05-25 9 views
0

Wir haben eine Web-App, die mit Netsuite über die Webdienste von Netsuite kommuniziert. Wir richten den Web-Service über den Web Add Reference-Assistenten von VS 2005 ein, der den gesamten Proxy-Code generiert.Wie kann ich eine Web-Service-URL ohne Neukompilierung ändern?

Netsuite verfügt über Sandbox-Konten, die das Testen ermöglichen (eine andere Web-Referenz-URL). Im Idealfall möchten wir zwischen dem Live-Service und dem Test-Service hin- und herspringen. Ich hoffe, dass ich einfach eine XML-Datei so ändern kann, dass sie auf den gewünschten Webdienst verweist. Die Konfigurationsdatei enthält

<Netsuite.Properties.Settings> 
     <setting name="Netsuite_com_netsuite_webservices_v21_NetSuiteService" 
      serializeAs="String"> 
      <value>https://webservices.netsuite.com/services/NetSuitePort_2008_2</value> 
     </setting> 
    </Netsuite.Properties.Settings> 

aber die Web-Referenz-URL ist https://webservices.netsuite.com/wsdl/v2008_2_0/netsuite.wsdl

Hat jemand versucht, dies und weiß, wie dies zu tun?

+0

So Was passiert, wenn Sie die URL in der Konfigurationsdatei ändern? Funktioniert das nicht oder Sie möchten eine separate XML-Datei mit der URL anstelle von app/web.config? –

+0

Die URL in der Konfigurationsdatei stimmt nicht mit der URL überein, die ich im Assistenten eingegeben habe, daher bin ich mir nicht sicher, an was sie geändert werden sollte, um den anderen Dienst auszuprobieren. – woaksie

+0

Ich vermisse etwas. Was passiert, wenn Sie die URL in der Konfigurationsdatei ändern? –

Antwort

0

In VS2005 kann ich nicht testen, aber ich weiß, dass Sie in 2008, wenn Sie eine Webanwendung bereitstellen, den Dienst-URI in der Datei Settings.settings im Eigenschaftenverzeichnis ablegen. Sie können den URI so ändern, dass er auf die Testinstanz des Dienstes verweist, und die Anwendung neu starten.

0

Sie können die WebService-URL in die Datei web.config (oder AppSettings.config) einfügen und dann zur Laufzeit festlegen.

wsProxy proxy = new wsProxy(); 
wsProxy.Url = ConfigurationManager.AppSettings.Get("WebserviceUrl"); 
wsProxy.DoSomething(); 

Dadurch können Sie die WebService-URL ändern, ohne die Anwendung erneut zu kompilieren.

+0

Dies würde eine Neukompilierung erfordern. Wir haben die App bereits bereitgestellt und müssen die URL ändern. – woaksie

+0

Sieht so aus, als hätte ich keine andere Wahl, als diese Lösung zu verwenden. – woaksie

Verwandte Themen