2

過去数か月間1台のサーバーを実行しており、すべてのファイルとSQLデータが含まれており、サーバーとして実行されています。データベースの負荷が非常に高かったため、最近、レプリケーションを使用するためにさらに2台のサーバーを購入しました。

MSSQLでトランザクションレプリケーションを使用する単純なマスタースレーブレプリケーションを使用しますが、LINQエンティティにアクセスするために使用するメソッドは変更する必要があります。

更新するすべての関数について、マスターに接続する必要がありますが、選択するすべての関数はスレーブに照会する必要があります。

実行する必要のある機能に基づいて接続文字列を編集するにはどうすればよいですか?

どんな助けでもいただければ幸いです。

ありがとう

4

2 に答える 2

1

エンティティにLINQを使用している場合は、接続文字列をコンテキストのインスタンスに渡すことができます。つまり、ModelContext ctx = new ModelContext( "[edmx format connectionstring]");

于 2012-09-13T02:45:32.970 に答える
1

最も簡単なアプローチは次のとおりです。

  1. 読み取り書き込みweb.config <connectionStrings>のセクションに2つの接続文字列を作成します。
  2. データをクエリするときは、読み取った接続文字列名をコンテキストのコンストラクターに渡します。
  3. そして、更新時に書き込み接続文字列名を渡します。
于 2012-09-13T05:00:17.153 に答える