Если мы хотим получить имя хоста, вы можете использовать переменную окружения WEBSITE_HOSTNAME , чтобы сделать это.
var hostName = Environment.GetEnvironmentVariable("WEBSITE_HOSTNAME");
Если вы запустите его в среде слотов, вы получите значение youwebsiteName-slotName.azurewebsites.net
. Или, если вы запустите его в производственной среде, вы получите значение youwebsiteName.azurewebsites.net
.
Обновление:
Мы могли бы использовать слот appsetting для этого.
1.Зайдите в слот webApp и настройте настройки приложения и проверьте настройки слота.
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;
}