zoukankan      html  css  js  c++  java
  • 2:Program.cs文件分析

    1:如下图,Connected Services和依赖项,这两个东西在硬盘上是不存在的;Properties在硬盘上是存在的。如果使用其他模板,会有一个wwwroot,这个也是在硬盘上存在的。

    2:appsettings.json就是个配置文件

    3:Program.cs和Startup.cs,这两个文件控制着整个程序在运行时候的启动和配置

    4:实际上还有一个项目文件,我们右键项目,选择scproj

    5:这个文件里呢,包含了所有用来构建你这个项目的一些明细信息,比如项目所用的SDK,以及NuGet包等等

     

     6:Program.cs

      6.1:如下图所示,有个Main方法和控制台一样,这个Main方法可以传参数,所以我们有一些可以配置的参数可以通过命令行参数来传进来,由于它是控制台请求,那么他可以通过控制台来启动

      6.2:如果是命令行运行,如下图:运行这个项目,args就相当于参数,这个dotnet run 运行之后,他就会去找Program.cs里的Main方法,然后把参数传给CreateWebHostBuilder(也就是上图下面的那个方法)

      6.3:用这个CreateWebHostBuilder方法来构建一个webHost,也叫webServer,然后build一下,接着就运行了

      6.4:如果是用Visual Studio运行的话,原理也一样,也是找Main方法把参数传进去,但不同的是使用VS运行时默认情况下是使用IIS Express,

      6.5:VS运行web项目的时候他会把webServer(它构建出来的webServer),把他放到IIS Express的后面,所以IIS Express就相当于一个代理服务器,他会把外界的请求来转发给我们的web应用程序。

      6.5:我们这个web应用原来是运行在一个单独的进程,他有他自己的服务器,但是现在使用Inprocess之后呢,他就和IIS运行于同一个进程了,这样性能会有所提高。

    7:CreateWebHostBuilder方法返回的是一个IWebHostBuilder,然后用这个builder进行build()一下,就出来这个webHost或者叫webServer,然后运行就可以了

      7.1:下面这个方法调用了WebHost的静态方法CreateDefaultBuilder(),在这里我们可以对他进行配置,比如下面使用Startup类

      7.2:这个UseStartup方法就是说,我们将使用Startup类来配置整个web应用,包括注册哪些服务了,按什么顺序使用中间件,都在这个类里进行配置

    8:当走到Run之后,我们这个web应用就可以监听http或者https的请求了

    9:整个program这个类,主要配置的是整个web应用的基础设施,例如http服务器以及如何集成到IIS和配置源等信息 

     

  • 相关阅读:
    Servlet会话管理一(URL重写和表单隐藏域)
    Eclipse自动补全设置
    String类为什么设计成不可变的
    部署描述符(web.xml)和标注(annotation)
    html中   和空格的区别
    HTML的基本知识点
    Eclipse中配置Tomcat服务器并创建标准Web目录
    Sevlet处理HTML表单
    Servlet API
    Servlet开发的三种方法
  • 原文地址:https://www.cnblogs.com/Codemandyk/p/10900648.html
Copyright © 2011-2022 走看看