Sinceramente non so dirti nulla su quel tipo di errore, però sono riuscito a connettermi con Oracle.
Per farlo ho trovato questa strada (non so se ce ne siano di più semplici):
1) Installare ODP .NET (Oracle Data Provider). Nel mio caso ho installato la 11 anche se mi connetto ad un 10g
2) Impostare sul file tsnames.ora i dati della connessione. Nel mio caso il file si trova in C:\app\Administrator\product\11.1.0\client\Network\Admin e contiene:
MiaConnessione =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <indirizzo ip>)(PORT = <numero porta>))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = <nome SID>)
)
)
Ovviamente sono da sistemare i vari valori con i dati del server a cui ci si deve connettere.
3) Nel progetto (nel mio caso un servizio WCF), nel file web.config impostare i dati per NHibernate nel seguente modo:
Dove MiaConnessione è il nome usato nel TNSNAME.ORA seguiti da utente e password per connettersi ad Oracle.
Il resto è tutto uguale agli esempi per SQL Server