asp.net core MVC(二) web host的默认配置

上一篇学习了,如何创建一个.net core 项目以及其空模板下的文件。

这一篇学如何进默认配置

首先进入入口文件Progam.cs文件

在Main函数中调用CreateWebHostBuilder方法,改方法返回一个IWebHostBuilder类型。在该方法中有一个WebHost类,他有一个静态方法CreateDefaultBuilder,通过安装recharper可以查看源代码,代码如下

静态方法中,返回一个实现了IWebHostBuilder接口的类,并对齐进行各种配置。

大致3部

1.创建WebHostBuilder类

2.配置WebHostBuilder

    2.1配置 kestrel服务器

       2.1.1读取appsettings.josn 文件

       2.1.2配置系统变量

       2.1.3如果有命令行命令就配置

   2.2配置日志

   2.3注册服务

   2.4添加IIS、ISSIntegraction、defaultServiceProvider

3返回WebHostBuilder

WebHostBuilder这个类是实现了IWebHostBuilder这个接口。

如何读取appsettings.json中的文件

1.首先我们在appsettings.json中添加一个键值对

{
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*",
  "Welcome": "I am from set.json", 
}

其中Welcome 是我们自己添加的。

2. 修改Startup.cs文件的Congure方法

//修改入参,多了IConfiguration configuration,由于.net core使用依赖注入的方式可以直接使用
public void Configure(IApplicationBuilder app, IHostingEnvironment env, IConfiguration configuration)
{
      if (env.IsDevelopment())
      {
            app.UseDeveloperExceptionPage();
      }

      app.Run(async (context) =>
      {
            var welcome = configuration["Welcome"];

            //await context.Response.WriteAsync("Hello World!");

            await context.Response.WriteAsync(welcome);

     });
}

重新运行

成功从配置文件中获取到数据。

猜你喜欢

转载自blog.csdn.net/a1034386099/article/details/88082425