问题描述
以下代码在NetCore 3.1中可以很好地工作,但在.Net5中不起作用
var webHostBuilder = WebHostBuilder(args);
var environment = webHostBuilder.GetSetting("environment");
解决方法
使用 GetService
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace WebApplication1
{
public class Program
{
public static void Main(string[] args)
{
var hostBuilder = CreateHostBuilder(args).Build();
var hostEnvironment = hostBuilder.Services.GetService<IHostEnvironment>();
// Get EnvironmentName
var environment = hostEnvironment?.EnvironmentName; // Possible values: Development,Production,CustomEnvironment,etc..
hostBuilder.Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
}