0

重複の可能性:
サイトが localhost または 127.0.0.1 で実行されている場合に ASP.NET MVC ビューをチェックインする方法

web.config で接続文字列に 2 つのエントリを使用しており、デプロイ環境と開発環境の間の検出に HttpContext.Current.Request.UserHostAddress を使用しています。

public static SqlConnection GetSqlConnection()
{
    if (HttpContext.Current.Request.UserHostAddress != "127.0.0.1")
    ...
    else
    ...
}

しかし、問題はここにあります.HttpContext.Currentがnullで例外が発生することがあります(つまり、スケジュールされたタスクがglobal.asaxからasp.netで実行される場合)。これに対する一般的な解決策はありますか?

4

1 に答える 1

4

環境間で構成ファイルの接続文字列を変更することになっています。そのため、最初に構成ファイルに保存されるため、これを行う必要はありません。

接続文字列を別のファイルに入れ、まったく展開しないことを好みます。環境固有の他の構成でも同じことができます。もう 1 つの方法は、ビルド ジョブの一部として XML 変換を使用して、運用環境にデプロイするときに接続文字列を変更することです。

于 2012-12-30T21:32:08.880 に答える