最近.net core 1.1也發(fā)布了,蹣跚學(xué)步的小孩又長高了一些,園子里大家也都非常積極的在學(xué)習(xí),閑來無事,扒拔源碼,漲漲見識(shí)。

先來見識(shí)一下web站點(diǎn)是如何啟動(dòng)的,如何接受請(qǐng)求,.net core web app最簡單的例子,大約長這樣

public static void Main(string[] args) { //dotnet NetCoreWebApp.dll --server.urls="http://localhost:5000/;http://localhost:5001/" var config = new ConfigurationBuilder().AddCommandLine(args).Build(); new WebHostBuilder()
                .UseConfiguration(config)
                .UseKestrel()
                .UseContentRoot(Directory.GetCurrentDirectory()) //.UseIISIntegration() .UseStartup<Startup>() //.Configure(confApp => //{ //    confApp.Run(context => //    { //        return context.Response.WriteAsync("hello"); //    }); //}) .Build()
                .Run();
        }

WebHostBuilder看名字也知道是為了構(gòu)建WebHost而存在的。在構(gòu)建WebHost的路上他都做了這些:如加載配置,注冊(cè)服務(wù),配置功能等。

1.1 加載配置