Интеграция замка ActiveRecord с несколькими базами данных - PullRequest
0 голосов
/ 09 августа 2010

Есть ли способ использовать Castle ActiveRecord Integration (Castle.Facilities.ActiveRecordIntegration.dll) с несколькими базами данных?

Мне уже известно об использовании NHibernate с несколькими базами данных и ActiveRecord. Но применительно к средству интеграции я ничего не нашел.

Есть предложения?

Tks !!

1 Ответ

1 голос
/ 10 августа 2010

Это почти то же самое, что и доступ к нескольким базам данных без возможности. Вы определяете элемент <config> для каждой базы данных (как подробно описано в документации AR ), например ::

<facility id="arfacility">
    <assemblies>
        <item>MyAssembly</item>
    </assemblies>
    <config>
        <add key="connection.driver_class" value="NHibernate.Driver.SQLite20Driver" />
        <add key="dialect"                 value="NHibernate.Dialect.SQLiteDialect" />
        <add key="connection.provider"     value="Castle.ActiveRecord.Testing.InMemoryConnectionProvider,Castle.ActiveRecord" />
        <add key="connection.connection_string" value="Data Source=:memory:;Version=3;New=True" />
        <add key="proxyfactory.factory_class" value="NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle" />
    </config>
    <config type="My.Secondary.Database.BaseClass, MyAssembly">
        <add key="connection.driver_class" value="NHibernate.Driver.SqlClientDriver" />
        <add key="dialect"                 value="NHibernate.Dialect.MsSql2000Dialect" />
        <add key="connection.provider"     value="NHibernate.Connection.DriverConnectionProvider" />
        <add key="connection.connection_string" value="Data Source=.;Initial Catalog=test;Integrated Security=SSPI" />
        <add key="proxyfactory.factory_class" value="NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle" />
    </config>
</facility>

Вы также можете использовать DifferentDatabaseScope в качестве альтернативы.

...