0

Massive 経由でデータベースに接続するにはどうすればよいですか?

Massive には接続を開くためのメソッドがありますが、接続文字列の名前を受け入れます。接続文字列を指定したい。これどうやってするの?

4

1 に答える 1

2

Open() メソッドの Massive コードで DynamicModel が作成され、DynamicModel コンストラクターで次の行が見つかりました ( Massive.cs 127 行):

ConnectionString = ConfigurationManager.ConnectionStrings[connectionStringName].ConnectionString;

つまり、接続文字列を構成ファイルに保存し、適切な接続文字列名を Open メソッドに渡す必要があります。

必要なのは、接続文字列を受け入れるオーバーロード メソッドを作成することです。次に例を示します。

public static DynamicModel Open(string connectionString, string providerName="System.Data.SqlClient") 
{
        dynamic dm = new DynamicModel(connectionString, providerName);
        return dm;
}

public DynamicModel(string connectionString, string providerName ="System.Data.SqlClient", string tableName = "", 
     string primaryKeyField = "", string descriptorField = "") 
{
        TableName = tableName == "" ? this.GetType().Name : tableName;
        PrimaryKeyField = string.IsNullOrEmpty(primaryKeyField) ? "ID" : primaryKeyField;
        DescriptorField = descriptorField;

        _factory = DbProviderFactories.GetFactory(providerName);
        ConnectionString = connectionString;
}
于 2012-05-04T12:07:45.927 に答える