欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP.NET Core launchsettings.json 文件

程序员文章站 2022-08-08 18:42:30
ASP.NET Core launchsettings.json 文件 在本节中,我们将讨论在 ASP.NET Core 项目中launchsettings.json文件的重要性。 launchsettings.json 文件 您将在项目根文件夹的**“Properties”**文件夹中找到此文件。 ......

asp.net core launchsettings.json 文件

在本节中,我们将讨论在 asp.net core 项目中launchsettings.json文件的重要性。

launchsettings.json 文件

  • 您将在项目根文件夹的**“properties”**文件夹中找到此文件。
  • 当我们从 visual studio 或使用.net core cli 运行此 asp.net core 项目时,将使用此文件中的设置。
  • 此文件仅用于本地开发环境。我们不需要把它发布到生产环境的 asp.net core 程序中。
  • 如果您希望您的 asp.net core 应用程序在发布和部署应用程序时使用某些独立的设置,请将它们存储在 appsettings.json 文件中。我们通常将应用程序的配置信息存储在此文件中,比如数据库连接字符串。
  • 我们还可以使用不同环境的 appsettings.json 文件。例如,appsettings.staging.json 用于临时环境。在- asp.net core 中,除了 appsettings.json 文件外,我们还可以配置源,如环境变量,用户密钥,命令行参数甚至创建属于我们自己的自定义配置源。
  • 有关这些不同配置源的 appsettings.json 文件的更多用法,我们的下一个视频会讲。

asp.net core 中的 lanuch 配置文件

打开您的程序员,可以看到 launchsettings.json 文件中的设置 信息如下:

{
  "iissettings": {
    "windowsauthentication": false,
    "anonymousauthentication": true,
    "iisexpress": {
      "applicationurl": "http://localhost:3290",
      "sslport": 0
    }
  },
  "profiles": {
    "iis express": {
      "commandname": "iisexpress",
      "launchbrowser": true,
      "environmentvariables": {
        "aspnetcore_environment": "development"
      }
    },
    "studentmanagement": {
      "commandname": "project",
      "launchbrowser": true,
      "applicationurl": "http://localhost:5000",
      "environmentvariables": {
        "aspnetcore_environment": "development"
      }
    }
  }
}

请注意,我们有两个配置信息:

  • iis express 和 studentmanagement

当我们通过按ctrl + f5或只是f5从 visual studio 运行项目时。 默认情况下,使用调用配置文件名称"commandname": "iisexpress",。 另外一种情况,如果我们使用.net core cli(dotnet run)运行项目,则使用带有"commandname": "project",的配置文件 。

我们可以通过单击 visual studio 中的下拉列表来更改要使用的配置文件中 .commandname 属性,修改默认设置。 ASP.NET Core launchsettings.json 文件

默认值可以是:

  • 项目
  • iisexpress
  • iis

此值与项目文件中的aspnetcorehostingmodel元素的值会有对应关系,会一起指定要启动的内部和外部 web 服务器(反向代理服务器)。

commandname aspnetcorehostingmodel 的值 internal web server(内部服务器) external web server(外部服务器)
项目 忽略托管设置的值 只使用一个 web 服务器 - kestrel 只使用一个 web 服务器 - kestrel
iisexpress 进程内托管(inprocess) 只使用一个 web 服务器 - iis express 只使用一个 web 服务器 - iis express
iisexpress 进程外托管(outofprocess) kestrel iis express
iis 进程内托管(inprocess) 只使用一个 web 服务器 - iis 只使用一个 web 服务器 - iis
iis 进程外托管(outofprocess) kestrel iis

您还可以通过直接编辑 launchsettings.json 文件中的设置,也可以使用 visual studio 提供的图形用户界面(gui)更改设置。

通过 gui 来设置

  • 在 visual studio 的解决方案资源管理器中右键单击项目名称,然后从上下文菜单中选择“属性”。 单击项目“属性”窗口中的“调试”选项卡,如下图

ASP.NET Core launchsettings.json 文件

使用 gui 我们可以更改launchsettings.json文件中的设置。

注意,环境变量“aspnetcore_environment”设置的默认设置为“development”。

我们可以将此值更改为staging或production,具体取决于我们是在staging还是production环境中运行此项目。

我们还可以添加新的环境变量。这些环境变量在我们的 asp.net core 应用程序中都可用,我们可以包含根据这些环境变量的值有条件地执行的代码。

例如,请参考startup.cs文件中的configure()方法中的以下代码

public void configure(iapplicationbuilder app, ihostingenvironment env)
        {
            if (env.isdevelopment())
            {
                app.usedeveloperexceptionpage();
            }

          //其他的代码

        }

仅当环境为“ development”时,才会显示“ 开发异常页面”。


欢迎添加个人微信号:like若所思。

欢迎关注我的公众号,不仅为你推荐最新的博文,还有更多惊喜和资源在等着你!一起学习共同进步!

ASP.NET Core launchsettings.json 文件