0

Visual Studio 2012 でクラス ライブラリ (dll) を開発しています。このライブラリには、app.config ファイルに接続文字列が設定された、最初に作成されたモデル データベースが含まれています。

ここで、dll プロジェクトへの参照を追加して、コンソール アプリ (実際にはテストですが、これはほとんど同じです) を作成しています。最初は、コンソールアプリはdllを使用していたため、データベースについて何も知る必要はないと思っていましたが、接続文字列が見つからないというエラーが発生しました。私はそれを追加してうまくいきましたが、これは私が望むものではありません。すべてのデータベース関連のものをカプセル化するためにdllが必要です。また、最も気になるのは、dll とアプリの両方で接続文字列も必要であり、dll/bin/debug フォルダーで生成された .mdf ファイル (ローカル SQL サーバーを使用している) が必要であり、コピーされていることです。 app/bin/debug フォルダーに移動するので、ファイルが両側にある必要があります...

アプリの構成ファイルではなく、独自の構成ファイルを使用して、dll を単独で動作させるにはどうすればよいですか? いいえ、ある種のサービスを使用することはオプションではありません.dllである必要があります!

4

1 に答える 1

0

データベースクラスでは、このような接続文字列を基本パラメーターとして追加できます

public class mydb:DbContext
{
   public mydb() :base("Server=....")
    {
    }
}

または、接続文字列を app.config に追加して、その名前を base に入れるだけです

例:

 public mydb() :base("ConnectionstringName")
于 2013-04-27T07:25:45.640 に答える