2011-01-13 7 views
2

Ich kann keine Verbindung zu einem Oracle-Schema über einen asmx-Webdienst herstellen, statt über eine Konsolenanwendung [x86].Die Verbindung zu Oracle funktioniert über eine Konsolenanwendung und funktioniert nicht über einen Webdienst.

Der Code:

var conn = new OracleConnection("Data Source=xe;User ID=mySchema;Password=myPass"); 

Die Ausnahme:

ORA-12154: TNS:could not resolve the connect identifier specified 

Die Umgebung: Windows 7 x64 - VS 2008

Jede Idee?

fragen Sie mich freundlicherweise für zusätzliche Informationen

Vielen Dank im Voraus.

+0

Werden die Konsolenanwendung und der Webdienst vom selben Host ausgeführt? Sind Ihre Dateien sqlnet.ora und tnsnames.ora korrekt eingerichtet, um die Namensauflösung für die angegebene Datenbank zu ermöglichen? Haben Sie versucht, den Host, mit dem Sie eine Verbindung herstellen möchten, mit TNSP zu verbinden? Löst es auf? –

+0

@DarkBobG: Ja, sie stammen vom selben Host. und ich habe TNSPing versucht, es hat den Alias ​​aufgelöst. Es ist in Ordnung. – Homam

Antwort

3

OCI, die Oracle-Client-Schicht, auf der ODP (oder die nativen Schicht Oracle-Client) basiert hat einen Fehler, die jede Anwendung in einem Ordner mit Klammern() vom Laufen richtig

Dieser Fehler lag verhindert ist sehr sichtbar seit der Erscheinung des Ordners Programme (x86) ...

Der Host, auf dem Ihre Anwendung ausgeführt wird (normalerweise IIS), befindet sich wahrscheinlich im Ordner x86, daher das Problem. Ihre Konsolenanwendung funktioniert einwandfrei, da sie sich wahrscheinlich in einem Ordner befindet, in dem das Problem nicht auftritt.

Weitere Informationen und ein paar Lösungen here.

0

Ich bin kein Oracle-Typ in irgendeiner Weise, aber ich habe ähnliche Situationen in anderen Datenbanken erlebt. Das Problem war, dass der DSN als Benutzer-DSN und nicht als System-DSN erstellt wurde. Ich weiß nicht, wie Oracle Datenquellen erstellt werden, aber ich würde das überprüfen.

Verwandte Themen