2011-12-17 12 views
3

3つのedmxファイルを含むdot net 4.0 DALライブラリプロジェクトがあります。私は3つのファイルで私のデータベースにテーブルがたくさんあり、私がここでStackoverflowで読んだことから、データモデルを分割することがベストプラクティスのように思えました。複数のedmxファイルのためのLinq-To-Entities接続文字列

しかし、私はApp.configに3つの接続文字列エントリがあり、基本的に同じデータベース接続を使用しています。私は何とか私の設定ファイル内の接続文字列が1つだけで、古いado.netスタイルに戻ることができますか?

おかげで、あなたのコードで イェンス

答えて

1

あなたの設定ファイルに保存されている「定期的に」接続文字列から3つの別々の接続文字列を構築するためにEntityConnectionStringBuilderを使用することができます。あなたは3 EntityConnectionStringsを作成することができます

string providerString = <load your connection string>; 

// Initialize the EntityConnectionStringBuilder. 
EntityConnectionStringBuilder entityBuilder = 
    new EntityConnectionStringBuilder(); 

//Set the provider name. 
entityBuilder.Provider = providerName; 

// Set the provider-specific connection string. 
entityBuilder.ProviderConnectionString = providerString; 

// Set the Metadata location. 
entityBuilder.Metadata = @"res://*/AdventureWorksModel.csdl| 
          res://*/AdventureWorksModel.ssdl| 
          res://*/AdventureWorksModel.msl"; 

し、あなたのモデルを指すように各1上のメタデータプロパティを変更:

あなたのような何かを得るでしょう。

ただし、コード内の接続文字列のハードコード部分が発生することに注意してください。

+0

これはちょうど私が必要なものです。どうもありがとう。 –

関連する問題