0

ASP.NET MVC 用の Entity Framework に慣れ親しみ、最初のアプリのテストと展開について考える必要がある段階に到達しました。ここまでは、DbContextをハードコーディングされた SQL Server 接続文字列として定義しただけですが、いくつかのモデル エンティティが定義されていると、運用 DB サーバーとテスト DB サーバーを切り替えるのが難しくなります。

Web.Staging.config通常、独自のデータ アクセス レイヤーを記述している場合は、またはファイルで次のようなものを定義してWeb.Release.config、簡単に切り替えられるようにします。

<add key="DBIP" value="x.y.z.z" /> <!-- Local Debug -->

次に、接続文字列を構築するときに、構成された値が何であれ参照できます。残念ながら、そのようなパラメーターを「グローバルに」設定する方法はないようです。つまり、毎回数十の EF 接続文字列を維持する必要があります。生成されたコードに関するこのような譲歩は常にありますが、誰かが労力を節約する回避策にたどり着いたかどうかを知りたいです。

読んでくれてありがとう :)

4

1 に答える 1

0

接続文字列は Web 構成内に保持する必要があります。各環境には、前述のように独自の構成がありますWeb.Staing.configWeb.Release.Config

に接続文字列の名前を渡すことができますDbContext。すべての環境で同じ名前を保持しておけば、問題はありません。

public class BaconContext : DbContext
{
    public BaconContext()
        : base("BaconDatabase")
    {
    }
}

<configuration>
  <connectionStrings>
    <add name="BaconDatabase"
     connectionString="Data Source=localhost"/>
  </connectionStrings>
</configuration>
于 2013-10-09T13:34:53.027 に答える