这是我的代码
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args).ConfigureAppConfiguration((hostingContext, config) =>
{
config.Sources.Clear();
var env = hostingContext.HostingEnvironment;
config.AddJsonFile("appsettings.json")
.AddJsonFile($"appsettings.{env.EnvironmentName}.json");
config.AddEnvironmentVariables();
if (args != null)
{
config.AddCommandLine(args);
}
});
}
}
此外,该项目有appsettings.Development.json和appsettings.Production.json。在VS中,我将环境变量ASPNETCORE_ENVIRONMENT明确设置为Development,因此launchSettings.json如下所示:
{
"profiles": {
"ConsoleApp1": {
"commandName": "Project",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
然而,在VS中运行应用程序时,我始终将env.EnvironmentName设置为Production。 我想知道为什么以及如何在这种情况下将环境设置为Development。