0

データベース接続設定を表すクラスまたはインターフェイスは c# にありますか? 接続設定を次のような関数に渡したい:

public DoWorkOnDb(IDbConnectionSettings settings)
{
   SqlConnection connection = new SqlConnection(settings.ConnectionString);
   ...
}

私がしたくないことは次のとおりです。

  • 関数は自分で接続を処理する必要があるため、接続を渡します
  • すべてのタイプの文字列を渡すことができるため、接続文字列を渡します
  • サーバー、データベース、ユーザー、パスワードなどの複数の文字列を渡します。これは、関数で接続文字列を作成する必要があるためです。
4

4 に答える 4

2

私が理解している限り、SqlConnectionStringBuilderが必要です。次に、 ToString()またはTryGetValue()メソッドを呼び出す必要があります。

于 2013-01-30T08:48:16.163 に答える
0

個人的には、関数を渡します:

public DoWorkOnDb(Func<SqlConnection> connectionFactory)
{
    using (var connection = connectionFactory())
    {
        // ...
    }
}
于 2013-01-30T08:54:48.597 に答える
0

SqlConnectionStringBuilder

SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
builder["Data Source"] = "(local)";
builder["integrated Security"] = true;
builder["Initial Catalog"] = "AdventureWorks";
Console.WriteLine(builder.ConnectionString);
于 2013-01-30T08:50:43.227 に答える
0

またはプロパティを持つConnectionStringSettingsCollectionクラスを探しているのかもしれません。ConnectionStringSettingsConnectionStringProviderName

と組み合わせたくなるかもしれませんDbConnectionStringBuilder

于 2013-01-30T08:51:14.707 に答える