ASP.NET Core環境変数と起動設定の設定
5529 ワード
この部分ではASPについて議論する.NET Coreの新しい機能:環境変数と起動設定は、開発中のデバッグとテストをより簡単にします.プロファイルを簡単に変更するだけで、開発、プレゼンテーション、本番環境の切り替えが可能になります.
ASPNETCORE_ENVIRONMENT
Development(開発) Staging(プレゼンテーション) Production(生産) 私たちはStartupにいます.csファイルでは、対応する方法を使用してアプリケーションの動作を制御できます.次に、サンプルプログラムの作成時のStartupを示す.csファイル生成のデフォルトコード:
ここで、IHostingEnvironmentタイプの変数は、現在のアプリケーションが実行する環境、ASPを表す.Net Coreは、「ASPNEtCORE_ENVIRONMENT」の現在の値を検出するための4つの拡張方法を提供します. IsDevelopment() IsStaging() IsProduction() IsEnvironment()
アプリケーションが特定の環境で実行されているかどうかを確認する必要がある場合はenvを使用します.IsEnvironment("environmentname")このメソッドは大文字小文字を無視します(env.EnvironmentName="Development"を使用して環境をチェックしないでください).
上記のコードを使用すると、現在開発環境であれば、UseDeveloperExceptionPage()、UseBrowserLink()メソッドを使用して開発環境のエラーページを有効にし、Visual StuidoのBrowser Link機能を有効にすることができます.これらの機能は、開発中にプログラムをデバッグするのに役立ちます.しかし、本番環境ではこれらの機能を有効にするのではなく、エラーページをパス「/Home/Error」に移動し、ユーザーに友好的なエラーメッセージを表示します.
launchSettings.jsonファイル
ASPNETCORE_ENVIRONMENT
ASP.NET Core制御環境切替の最も核心的なものは「ASPNEtCORE_ENVIRONMENT」環境変数であり、現在のアプリケーションが実行している環境タイプを直接制御します.この環境変数は、プロジェクトの右クリックメニューから[プロパティ]オプションを選択し、[デバッグ]タブに切り替えることで変更できます.
この環境変数フレームワークにはデフォルトで3つの値があります.もちろん、他の値を定義することもできます.
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug(); if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseBrowserLink();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
ここで、IHostingEnvironmentタイプの変数は、現在のアプリケーションが実行する環境、ASPを表す.Net Coreは、「ASPNEtCORE_ENVIRONMENT」の現在の値を検出するための4つの拡張方法を提供します.
アプリケーションが特定の環境で実行されているかどうかを確認する必要がある場合はenvを使用します.IsEnvironment("environmentname")このメソッドは大文字小文字を無視します(env.EnvironmentName="Development"を使用して環境をチェックしないでください).
上記のコードを使用すると、現在開発環境であれば、UseDeveloperExceptionPage()、UseBrowserLink()メソッドを使用して開発環境のエラーページを有効にし、Visual StuidoのBrowser Link機能を有効にすることができます.これらの機能は、開発中にプログラムをデバッグするのに役立ちます.しかし、本番環境ではこれらの機能を有効にするのではなく、エラーページをパス「/Home/Error」に移動し、ユーザーに友好的なエラーメッセージを表示します.
launchSettings.jsonファイル
ASP.Net CoreはlaunchSettingsを含む.jsonの新しいファイルです.プロジェクトの「Properties」フォルダでファイルを見つけることができます.
このファイルはVisual Studioが起動できる異なる環境を設定しています.以下はサンプルプロジェクトのlaunchSettingsです.jsonファイル生成のデフォルトコード:{ "iisSettings": { "windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": { "applicationUrl": "http://localhost:22437/",
"sslPort": 0 }
}, "profiles": { "IIS Express": { "commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}, "CoreWebApp": { "commandName": "Project", "launchBrowser": true, "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development"
}, "applicationUrl": "http://localhost:22438"
}
}
}
ここでは、「IIS Express」、「CoreWebApp」の2つの構成ノードがあります.この2つのノードは、Visual Stuidoのデバッグ開始ボタンのドロップダウン・オプションに対応しています.アプリケーションを起動するには、対応するオプションを選択できます.
launchSettings.jsonファイルは、Visual Stuidoでアプリケーションを実行する環境を設定します.また、Visual Stuidoデバッグボタンのドロップダウンオプションに自動的に追加されるノードを追加することもできます.
これらのプロパティの詳細について説明します.{ "iisSettings": { "windowsAuthentication": false,// Windows
"anonymousAuthentication": true,//
"iisExpress": { "applicationUrl": "http://localhost:22437/",// Url 。
"sslPort": 44355// SSL }
}, "profiles": { "IIS Express": { "commandName": "IISExpress", "commandLineArgs": "", //
"workingDirectory": "", //
"launchBrowser": true, //
"launchUrl": "1111", // URL
"environmentVariables": { // /
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
その他のプロパティの詳細については、次のリンクを参照してください.http://json.schemastore.org/launchsettings .
環境ラベル
このラベルを使用すると、アプリケーションは現在実行されている環境に基づいてMVCビューの構造を変更します.サンプルアイテムで_Layout.cshtmlファイル生成のデフォルトコード:
この例では、開発モードでアプリケーションを実行するときに、ローカルのBootstrapファイルとカスタムcssファイルを使用します.しかし、プレゼンテーションや本番環境で実行する場合は、ASPを使用します.NETコンテンツ配信ネットワーク(CDN)上のファイルコピーと圧縮されたカスタムスタイル.このようにして、アプリケーションのパフォーマンスを向上させることができます.
{ "iisSettings": { "windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": { "applicationUrl": "http://localhost:22437/",
"sslPort": 0 }
}, "profiles": { "IIS Express": { "commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}, "CoreWebApp": { "commandName": "Project", "launchBrowser": true, "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development"
}, "applicationUrl": "http://localhost:22438"
}
}
}
{ "iisSettings": { "windowsAuthentication": false,// Windows
"anonymousAuthentication": true,//
"iisExpress": { "applicationUrl": "http://localhost:22437/",// Url 。
"sslPort": 44355// SSL }
}, "profiles": { "IIS Express": { "commandName": "IISExpress", "commandLineArgs": "", //
"workingDirectory": "", //
"launchBrowser": true, //
"launchUrl": "1111", // URL
"environmentVariables": { // /
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
このラベルを使用すると、アプリケーションは現在実行されている環境に基づいてMVCビューの構造を変更します.サンプルアイテムで_Layout.cshtmlファイル生成のデフォルトコード:
この例では、開発モードでアプリケーションを実行するときに、ローカルのBootstrapファイルとカスタムcssファイルを使用します.しかし、プレゼンテーションや本番環境で実行する場合は、ASPを使用します.NETコンテンツ配信ネットワーク(CDN)上のファイルコピーと圧縮されたカスタムスタイル.このようにして、アプリケーションのパフォーマンスを向上させることができます.