2010-02-24 3 views
0

Может ли кто-нибудь с успехом использовать NHibernate с Oracle Lite, если да, можете ли вы сказать мне, что нам нужно упомянуть в hibernate.cfg.xml, я имею в виду, какой диалект и как мы подключаемся к нему. Благодарю.NHibernate и Oracle Lite

ответ

1

Какую версию NH вы используете? Похоже, эта функция довольно новая, только в рамках Aplha: 2.1.0.Alpha1.
Улучшения:
* [NH-1644] - Oracle Lite Драйвер с рабочими Параметры запроса

Я не пробовал, так что я не могу сказать, что строка соединения для использования, но говор должен быть «OracleLiteDialect» как Alexandre Оплата указана here. Jira issues решены, поэтому стоит попробовать.

Пожалуйста, разместите строку подключения, если вы смогли подключиться.

0

Пространства имен для классов «Драйвер и диалект»: NHibernate.Driver и NHibernate.Dialect соответственно. Вы можете использовать Intellisense или Reflector, чтобы увидеть, что именно доступно.

конфигурации заводском Сеанс для Oracle Lite:

<property name="connection.connection_string">...</property> 
<property name="connection.driver_class">NHibernate.Driver.OracleLiteDataClientDriver</property> 
<property name="dialect">NHibernate.Dialect.OracleLiteDialect</property> 

строки соединения Oracle описаны here.

1

Вот app.config для тестового проекта я сделал некоторое время назад:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <configSections> 
    <section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate"/> 
    </configSections> 
    <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"> 
    <session-factory> 
     <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property> 
     <property name="dialect">NHibernate.Dialect.OracleLiteDialect</property> 
     <property name="connection.driver_class">NHibernate.Driver.OdbcDriver</property> 
     <property name="connection.connection_string">dsn=TheDSN;uid=TheUserId;pwd=ThePassword</property> 
     <property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property> 
     <property name="show_sql">true</property> 
    </session-factory> 
    </hibernate-configuration> 
</configuration> 

Примечание: для подключения к локальной базе данных Oracle Lite:

  • источника данных, как правило, построено как <Oracle lite user name>_<Database name>
  • идентификатор пользователя: SYSTEM
  • пароль является фактическим паролем пользователя Oracle Lite

Например, если ваш OL имя пользователя SCOTT, ваш пароль TIGER, и имя базы данных FOO, строка соединения Oracle Lite является: dsn=SCOTT_FOO;uid=SYSTEM;pwd=TIGER

Надеется, что это помогает

Смежные вопросы