Collegamento NHibernate per problemi di Oracle
-
01-10-2019 - |
Domanda
Sto provando a connettersi a un database Oracle utilizzando NHibernate. Posso collegare utilizzando il driver .Net:
<property name="connection.driver_class">NHibernate.Driver.OracleClientDriver</property>
Comunque io preferirei usare l'OracleDataClientDriver fornito con Oracle (o NHibernate? Non ricordo). Comunque Stavo usando le istruzioni di questo blog:
http://tiredblogger.wordpress.com/2008/11/07/using-oracle-odp-with-nhibernate-from-ac-class-library/
Tutto va bene, ma quando aggiungo l'app.config con la seguente impostazione alla mia classe di Unità di prova:
<runtime>
<assemblyBinding xmlns=“urn:schemas-microsoft-com:asm.v1“>
<qualifyAssembly partialName=“Oracle.DataAccess“
fullName=“Oracle.DataAccess,
Version=2.111.6.20,
Culture=neutral,
PublicKeyToken=89b483f429c47342“ />
</assemblyBinding>
</runtime>
E tentare di correre la mia prova ottengo il seguente errore:
Test 'M:UTOracleImporter.UT_SchemaDAO.Test_GetCustomer' failed: Could not load type 'TestDriven.Framework.Resident.IResidentTestRunner' from assembly 'TestDriven.Framework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=50ecb853f8c6b8d2'.
System.TypeLoadException: Could not load type 'TestDriven.Framework.Resident.IResidentTestRunner' from assembly 'TestDriven.Framework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=50ecb853f8c6b8d2'.
at TestDriven.TestRunner.AdaptorTestRunner.Run(ITestListener testListener, ITraceListener traceListener, String assemblyPath, String testPath)
at TestDriven.TestRunner.ThreadTestRunner.Runner.Run()
Qualche consiglio? Modifica : ho aggiunto il test Driven assembly nella Global Assembly Cache e ora sto ottenendo un errore diverso:
NHibernate.HibernateException: The IDbCommand e IDbConnection attuazione nell'assieme Oracle.DataAccess non è stato trovato. Garantire che l'impianto Oracle.DataAccess si trova nel directory dell'applicazione o nel Global Assembly Cache. Se il gruppo è in GAC, l'uso elemento nell'applicazione file di configurazione per specificare il pieno nome del gruppo.
Qual è lo stesso errore che significava essere affrontate nel app.config. L'Oracle.DataAccess è stato aggiunto al GAC e ho anche provato nella cartella dell'applicazione. Eppure appare ancora errore.
Soluzione
Non vedo alcun riferimento a Oracle (o NHibernate) in tale errore.
In ogni caso, vi consiglio l'aggiornamento a NH 3.0 Alpha2. La roba assemblyBinding non è più necessaria.