[실제 학습 노트의 .NET 핵심 개발] 시작 프로그램은 : 시작 프로그램을 이해

녹화 시작 Xiaowei 유 교사의 학습 과정은 각 단원 요약 양식에 기록, 실제적인 학습 [.NET 코어] 개발

장 시작 프로그램 : 시작 프로그램을 이해

ASP.NET 코어 웹 프로젝트를 작성, 당신은 두 개의 핵심 클래스 프로그램 및 시작 프로그램, 프로그램의 주요 방법이라고 CreateHostBuilder 방법을 참조하고 반환 할 수 IHostBuilder의 전체 프로젝트를 운반하는 핵심 인터페이스 인터페이스를.

CreateHostBuilder 방법에서, ConfigureWebHostDefaults 방법 빌드 호스트 프로세스가 시작 프로그램 또 다른 핵심 클래스를 호출

사실, 모든 구성이 프로그램에서 설정할 수 있습니다, 다른 코어 클래스 시작 프로그램 관리 개선의 코드 구조를 호출

구현의 전체 과정에서,이 방법의 실행은 다음과 같은 코드가 특정의 순서로 수행되고, 수행하기 위해 고정 대신 위임 자신의 기능을 수행하도록 일련의 코드를 작성하지 않는다

다음과 같이 Program.CreateHostBuilder 정의

공용  정적 IHostBuilder CreateHostBuilder ( 문자열 [] 인수) => 
            Host.CreateDefaultBuilder (인수) 
                .ConfigureHostConfiguration (configurationBuilder => 
                { 
                    Console.WriteLine ( " 执行方法: ConfigureHostConfiguration " ) 
                }) 
                .ConfigureServices (서비스 => 
                { 
                    Console.WriteLine ( " 执行方法: ConfigureServices " ) 
                }) 
                .ConfigureLogging (loggingBuilder => 
                {
                    Console.WriteLine ( " 실행 방법 ConfigureLogging " ) 
                }) 
                .ConfigureAppConfiguration ((hostBuilderContext, configurationBinder) => 
                { 
                    Console.WriteLine ( " 실행 방법 ConfigureAppConfiguration " ) 
                }) 
                .ConfigureWebHostDefaults (WebBuilder => 
                { 
                    Console.WriteLine ( " 실행 방법 ConfigureWebHostDefaults " ) 
                    webBuilder.UseStartup <시작> (); 
                });

정의 시작 프로그램의 방법

공공 시작 (IConfiguration 구성) 
        { 
            Console.WriteLine ( " 执行方法: 시작 " ); 
            구성 = 구성; 
        } 

        공공 IConfiguration 구성 { GET ; } 

        // 이 메소드는 런타임에 의해 호출됩니다. 컨테이너에 서비스를 추가하려면이 방법을 사용합니다. 
        공공  무효 ConfigureServices (IServiceCollection 서비스) 
        { 
            Console.WriteLine ( " 执行方法: Startup.ConfigureServices " ); 
            services.AddControllers (); 
        }

        // 이 메소드는 런타임에 의해 호출됩니다. HTTP 요청 파이프 라인을 구성하려면이 방법을 사용합니다. 
        공공  무효 구성 (IApplicationBuilder 앱 IWebHostEnvironment ENV) 
        { 
            Console.WriteLine ( " 执行方法: Startup.Configure " );
            경우 (env.IsDevelopment ()) 
            { 
                app.UseDeveloperExceptionPage (); 
            } 

            app.UseHttpsRedirection (); 

            () app.UseRouting; 

            app.UseAuthorization (); 

            app.UseEndpoints (종점 => 
            { 
                endpoints.MapControllers (); 
            }); 
        }

도 실행 결과는 다음이다

 

구현의 가시화는 특정 순서로 수행되고, 전화 인터페이스는 실행 순서를 변경되지

 

타사 로깅 프레임 워크를 사용하는 경우 실행 순서가 아니라 시작이 아닌 프로세스 CreateHostBuilder 대체되어이 또한 보여

추천

출처www.cnblogs.com/c-supreme/p/12459414.html