Cle*_*ent 5 asp.net azure-app-service-plans azure-web-app-service
当 asp.net 核心进程启动时,如何获取我的应用服务的插槽(生产或暂存)的名称。
HTTP_HOST 环境变量似乎没有在启动时设置,我没有要检查的 http 请求。
如果我们想获取主机名,您可以使用环境变量WEBSITE_HOSTNAME来做到这一点。
var hostName = Environment.GetEnvironmentVariable("WEBSITE_HOSTNAME");
Run Code Online (Sandbox Code Playgroud)
如果您在 slot 环境中运行它,那么您将获得 value youwebsiteName-slotName.azurewebsites.net。或者,如果您在生产环境中运行它,您将获得价值 youwebsiteName.azurewebsites.net。
更新:
我们可以使用 appsetting 插槽来做到这一点。
1.转到插槽webApp并配置appsetting并检查插槽设置。
2.请使用以下代码获取插槽名称。
string name = string.Empty;
var sitName = Environment.GetEnvironmentVariable("APPSETTING_WEBSITE_SITE_NAME", EnvironmentVariableTarget.Process);
var slotName = Environment.GetEnvironmentVariable("APPSETTING_KeyName", EnvironmentVariableTarget.Process); //APPSETTING_Test_Slot
if (!string.IsNullOrEmpty(slotName))
{
name = sitName + "-" + slotName;
}
else
{
name = sitName;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1612 次 |
| 最近记录: |