Ich brauche NHibernate 2.1, um mit einer Oracle-Datenbank zu sprechen. Ich muss den Oracle 10g Client verwenden. Ich erhalte die folgende Fehlermeldung beim Versuch meiner Session Fabrik zu bauen:Fehler mit NHibernate 2.1 und Oracle 10g Client
Kann nicht das Objekt vom Typ ‚Oracle.DataAccess.Client.OracleConnection‘ werfen ‚System.Data.Common.DbConnection‘ eingeben.
Ich erinnere mich nicht, diesen Fehler mit NHibernate 2.01 erhalten. Ich versuche, die Serveradministratoren zu veranlassen, den 11g-Client zu installieren, aber es sieht so aus, als wäre das ein Kampf.
Hier sind die wichtigen Bits aus meinem web.config:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<qualifyAssembly partialName="Oracle.DataAccess" fullName="Oracle.DataAccess, Version=10.2.0.100, Culture=Neutral, PublicKeyToken=89b483f429c47342"/>
</assemblyBinding>
</runtime>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="dialect">NHibernate.Dialect.Oracle10gDialect</property>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class">NHibernate.Driver.OracleDataClientDriver</property>
<property name="connection.connection_string_name">Demo</property>
<property name="show_sql">false</property>
<property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
</session-factory>
</hibernate-configuration>
Voll Stack-Trace
at NHibernate.Tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.Prepare()
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.GetReservedWords(Dialect dialect, IConnectionHelper connectionHelper)
at NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.Update(ISessionFactory sessionFactory)
at NHibernate.Impl.SessionFactoryImpl..ctor(Configuration cfg, IMapping mapping, Settings settings, EventListeners listeners)
at NHibernate.Cfg.Configuration.BuildSessionFactory()
at ConsoleApplication6.Program.Main(String[] args) in C:\\Dev\\Temp\\ConsoleApplication6\\Program.cs:line 26
Dank sehen, dass mein Tag gerettet –