- - PR -
クラスライブラリのアセンブリ参照について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-08-23 01:38
クラスライブラリ内で使用するアセンブリの参照設定につき、
ご教授いただきたく。よろしくお願いします。 現在、ユーザのパラメータの指定により参照先のDBを切り替える クラスライブラリを作成しています。 VS2005でC#を使用。 対応するDBは、Oracle、MySQL。 それぞれODP.NET、Connector/Netを使用してデータアクセスを行います。 以下、ソースの抜粋です。
クラスライブラリのプロジェクトの設定において、 ODP.NET、Connector/Netのドライバに対する参照設定を ローカルコピーをしない設定にし、DLLファイルを作成します。 ASP.NETアプリを作成し、作成したクラスライブラリに対する参照を設定。 ビルドを実行すると、web.configに下記の設定が自動的に追加されてしまいます。
ODP.NETをインストールし、作成したASP.NETを実行すると、 MySql.Dataアセンブリのロードに失敗した旨のエラーが表示されてしましました。 クラスライブラリは、複数のASP.NETアプリからの参照を想定しています。 また、それぞれのASP.NETアプリは、Oracle、MySQLどちらかのDBのみを使用します。 [質問1] 使用するデータプロバイダのみをインストールして動作させられるよう、 クラスライブラリの参照を設定することはできるのでしょうか。 [質問2] データプロバイダは、.NET Framework 2.0対応のものであれば、 バージョンに依存せずローディングしたいと考えています。 クラスライブラリのコード中で、 System.Reflection.Assembly.LoadWithPartialNameメソッド を使用し、動的にアセンブリをローディングさせるコードを 書いてみましたが、LoadWithPartialNameメソッドは、 .NET Framework 2.0での使用は推奨されていない様子。 どのような代替案があるのでしょうか。 だらだらと纏まりのない質問申し訳ございません。 ご教授のほどよろしくお願い申し上げます。 [ メッセージ編集済み 編集者: EIS 編集日時 2007-08-23 01:44 ] | ||||||||
|
投稿日時: 2007-08-23 09:47
System.Reflection.Assembly.Load(string) 引数には、アセンブリの完全名を指定すればできそうな気がする。 | ||||||||
|
投稿日時: 2007-08-25 18:56
お礼が遅くなり申し訳ございません。
とすることで動的読み込みができました。 ありがとうございました。 |
1