2012-03-27 21 views
1

私はSharedDbConnectionScopeでいくつかのクエリをラップし、別の接続文字列でそれらを実行したいと思います。これを行うには、プロバイダー/接続文字列を動的に追加するにはどうすればよいですか?SubSonic 3の接続文字列を変更するにはどうすればよいですか?

おかげで、あなたのクラスは、コンストラクタが含まれて生成するために使用する

答えて

2

ActiveRecord\Context.ttLinqTemplates\Context.tt両方:

public <#=DatabaseName#>DB(string connectionStringName) 
    { 
     DataProvider = ProviderFactory.GetProvider(connectionStringName); 
     Init(); 
    } 

    public <#=DatabaseName#>DB(string connectionString, string providerName) 
    { 
     DataProvider = ProviderFactory.GetProvider(connectionString,providerName); 
     Init(); 
    } 

だから、あなたは次のように、これらのコンストラクタのいずれかに接続文字列を渡すことができます

// point to a certain connection string in the app.config 
var db = new MySample("SomeConnectionStringName"); 

// Use a specific connection string, not the app.config 
var db = new MySampleDB(@"server=.\SQL2008;database=Sample;integrated security=true;", "System.Data.SqlClient"); 
+0

ありがとうございました。私は何とかこれを逃し、それがより困難になると予想していた。 – bladefist

関連する問題