خطأ مع NHibernate 2.1 و Oracle العميل 10G
-
06-07-2019 - |
سؤال
ولست بحاجة للحصول NHibernate 2.1 لاجراء محادثات مع قاعدة بيانات أوراكل. أنا يجري المطلوبة لاستخدام العميل أوراكل 10g. أحصل على الخطأ التالي عند محاولة بناء مصنع جلسة بلدي:
<اقتباس فقرة>وغير قادر على تحويل كائن من نوع "Oracle.DataAccess.Client.OracleConnection" لكتابة "System.Data.Common.DbConnection".
اقتباس فقرة>وأنا لا أذكر الحصول على هذا الخطأ مع NHibernate 2.01. واني اسعى الى الحصول على إدارات الخادم لتثبيت عميل 11G، ولكن يبدو أن معركة فقدان.
وهنا البتات الهامة من وجهة نظري الملف 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>
وكامل تتبع مكدس
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
المحلول
وسألت هذا السؤال نفسه في المجموعة NHUsers، وحصلت على إجابة مقبولة. إضافة ما يلي إلى تكوين السبات:
<property name="hbm2ddl.keywords">none</property>
http://fabiomaulo.blogspot.com/2009 /06/auto-quote-tablecolumn-names.html
لا تنتمي إلى StackOverflow