.Net 6 如何确定其环境

问题描述 投票:0回答:1

我创建了一个 .Net 6.0 控制台应用程序。我需要它能够使用实体框架迁移数据库。现在,当我运行它时,它说它的环境是“生产”。在哪里配置的?

这是应用程序的启动代码。

    static void Main(string[] args)
    {
        using IHost host = Host.CreateDefaultBuilder(args)
            .UseSerilog((context, loggerConfiguration) => loggerConfiguration
                .ReadFrom.Configuration(context.Configuration)
                .WriteTo.Console())
            .ConfigureServices((context, services) =>
            {
                services.RegisterCoreServices(context.Configuration);
            })
            .Build();

        CallBatch(host.Services, args);

        host.RunAsync();
    }
console-application .net-6.0 environment
1个回答
3
投票

默认生产。

查看在 ASP.NET Core 中使用多个环境

环境

为了确定运行时环境,ASP.NET Core 从以下环境变量中读取:

  1. DOTNET_环境
  2. 调用 WebApplication.CreateBuilder 方法时的 ASPNETCORE_ENVIRONMENT。默认的 ASP.NET Core Web 应用模板调用 WebApplication.CreateBuilder。 ASPNETCORE_ENVIRONMENT 值覆盖 DOTNET_ENVIRONMENT。

IHostEnvironment.EnvironmentName 可以设置为任意值,但框架提供了以下值:

  1. 开发:launchSettings.json 文件将 ASPNETCORE_ENVIRONMENT 设置为本地计算机上的开发。
  2. 分期
  3. Production:如果未设置 DOTNET_ENVIRONMENT 和 ASPNETCORE_ENVIRONMENT,则为默认值。
© www.soinside.com 2019 - 2024. All rights reserved.