アプリケーション構成ファイルを使用した設定方法では、ADO.NET 2.0の機能であるSystem.Data.Common.DbProviderFactoryクラス を内部で使用します。次のコンポーネントをdiconファイルに登録する必要があります。
アプリケーション構成ファイルを使用した設定方法では、ADO.NET 2.0の機能であるSystem.Data.Common.DbProviderFactoryクラス を内部で使用します。次のコンポーネントをdiconファイルに登録する必要があります。
データソースの設定にはSeasar.Extension.Tx.Impl.TxDataSourceクラスを使います。 アプリケーション構成ファイルに定義したプロバイダ名を設定します。
プロパティ | 説明 | 例 |
---|---|---|
ProviderInvariantName | アプリケーション構成ファイルに定義する接続文字列名を指定します。必須です。 | provider |
コンポーネントの設定は以下のようになります。環境に合わせて書き換えてください。
Ado.dicon
<components namespace="Ado"> <!-- トランザクション用のDataSource --> <component name="DataSource" class="Seasar.Extension.Tx.Impl.TxDataSource"> <property name="ProviderInvariantName">"provider"</property> </component> <!-- ローカルトランザクション用のインターセプターで使用します --> <component name="TransactionContext" class="Seasar.Extension.Tx.Impl.TransactionContext"> <property name="IsolationLevel"> System.Data.IsolationLevel.ReadCommitted </property> </component> </components>
アプリケーション構成ファイルには、プロバイダ名(必須)とデータプロバイダのアセンブリ(任意)を設定する必要があります。
プロバイダ名の設定では、アプリケーション構成ファイルの <connectionStrings> 構成セクションデータソースに指定する接続文字列名、プロバイダ名、接続文字列を指定します。 詳細は、MSDN ADO.NET 2.0 基本クラスおよびファクトリによる汎用的なコーディングを参照してください。
また、.NET Frameworkデータプロバイダ for SQL Server以外の.NET Frameworkデータプロバイダを使用する場合、 アプリケーション構成ファイルに.NET Frameworkデータプロバイダのアセンブリを登録する必要があります。 アプリケーション構成ファイルの <seasar> 構成セクションにアセンブリを指定します。
App.config
<configuration> <configSections> <section name="seasar" type="Seasar.Framework.Xml.S2SectionHandler, Seasar" /> </configSections> <connectionStrings> <add name="provider" connectionString= "Server=(local);database=s2dotnetdemo;Integrated Security=SSPI" providerName="System.Data.SqlClient"/> </connectionStrings> <seasar> <assemblys> <!-- .NET Framework Data Provider for Oracle を使用する場合に必要です。 --> <assembly>System.Data.OracleClient, version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</assembly> <!-- Firebird .NET Data Provider を使用する場合に必要です。 --> <!-- <assembly>FirebirdSql.Data.Firebird, Version=1.7.0.1, Culture=neutral, PublicKeyToken=fa843d180294369d</assembly> --> </assemblys> </seasar> </configuration>