Frage

Wir haben einige SOAP-Client-Code auf unserer ASP.NET-Website implementiert, die eine Remote-Service aufruft. Implementierung grundsätzlich mithilfe von Visual Studio „Add Web Reference“ Assistenten getan wurde, und fügte hinzu richtige ‚Verwendung remote.service.namespace‘, um den Code und ruft den Dienst.

Code funktioniert lokal perfekt (von Visual Studio), aber nicht auf die Produktion Web-Server mit fehlenden Montagereferenzfehler:

  

CS0246: Der Typ oder Namespace-Name ‚remote.service‘ konnte nicht gefunden werden (möglicherweise fehlt eine using-Direktive oder ein Assemblyverweis?)

ich einen hinterhältigen Verdacht, dass ich nicht alle Bereitstellung richtig bin, vielleicht kann jemand darauf hinweisen, was ist, dass ich es bin fehle?

Danke!

Zusätzliche Informationen:

Projekt ist eine Webseite.

ASP.NET-Version 2.0 installiert und als Ziel sowohl auf dev-Box und Produktionsserver verwendet wird.

Proxy-Datei von WSDL.exe wird in das Stammverzeichnis der Website bereitgestellt, gleichen Ordner, in dem sich die Seite befindet. Global Namespace (Standard) wurde für die Proxy-Klasse genutzt wird.

War es hilfreich?

Lösung

Wenn dies ein Website-Projekt ist, dann wird die Proxy-Datei im Ordner App_Code befinden sollte

Andere Tipps

Sie haben erwähnt, die Proxy-DLL auf „den Stammordner der Website, wo sich die Seite befindet“ gesetzt wird.

Sie sollten die DLL in dem Ordner „ist“ platzieren. Wenn der Ordner nicht dort schaffen.

Der Web-Service-Client-Stack in .NET funktioniert Runtime Generation des Proxy-Client (von den Anmerkungen in der Klasse, die durch wsdl.exe / svcutil.exe). Diese erzeugte Datei endet in der Regel in einem Ihrer Server Temp Verzeichnissen (es gibt eine unter dem Hauptfenster Baum irgendwo). Das Problem ist, dass das ASP.NET-Benutzerkonto nicht die Rechte an dieses speziellen temporären Verzeichnis zu schreiben hat, aber nicht bemerken, die nicht an der Zeit, die die Datei schreibt, so dass Sie am Ende mit einem Fehler mit ihm versucht, die erzeugt zu laden Datei zurück. Sie können in der Situation, über die genaue Installationsreihenfolge auf dem Server abhängig enden. Sobald Sie das richtige Verzeichnis können Sie einfach beheben die NTFS-Perms auf das Verzeichnis, das Problem zu lösen.

Haben kopieren Sie den App_WebReferences Ordner und seinen Inhalt auf den Server?

Gibt es andere Teile des ASP.NET-Website arbeiten?

Hat Ihre Website 3.5 Ziel und möglicherweise 3.5 ist nicht auf dem Produktionsserver installiert?

Ist das eine Web-Site oder eine Web Application Project? Ich wette, es ist eine Web-Site.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top