ASP.NETコアの主な方法
ASP.NETコアプロジェクトでは、我々は、名前の持っているProgram.cs
ファイルを。この文書では、我々は持っているpublic static void Main()
方法を。
public class Program
{
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>();
}
あなたは、従来の.NET Frameworkを使用してのいずれかの経験をお持ちの場合は、コンソールアプリケーションは、コンソールプログラムの入り口であるmain()メソッドを、知っている必要があります。
しかし、今日、私たちは、ASP.NETコアWebアプリケーションの代わりにコンソールアプリケーションを作成しています。したがって、明白な疑問は、はい頭に浮かぶ。なぜ我々はまた、持っているかMain()
の方法を?
だから、この知識は、覚えています。ASP.NET Coreアプリケーションは、もともとコンソールアプリケーションとして開始し、Program.cs
ファイルのMain()
方法が入り口です。
実行されている私たちのアプリケーションを実行するときしたがって、それはこの見つけるMain()
方法を起動するための設定と場所を実行します。
このMain()
asp.netのコアを構成する方法と、それを起動するには、それはasp.netコアWebアプリケーションになります。あなたが追跡を見ればそう、Main()
この方法は、コマンドラインパラメータを渡すためにCreateWebHostBuilder()メソッドを呼び出します。
そして、あなたが見ることができ、CreateWebHostBuilder()メソッドは、IWebHostBuilderを実装するオブジェクトを返します。このテーマでは、呼び出すBuild()
メソッドを、それが私たちのASP.NETコアアプリケーションが生成され、サーバー上でホストされます。プログラムをサーバ上で呼び出してRun()
実行した後方法、Webアプリケーションを、着信HTTP要求をリッスンを開始します。CreateWebHostBuilder()
静的なクラスメソッドを呼び出しWebHost
静的メソッドをCreateDefaultBuilder()
。CreateDefaultBuilder()
この方法は、サーバ上で予め設定されたデフォルト値を作成しました。CreateDefaultBuilder()
サーバーを作成するために複数の操作を実行する方法。
私たちは、後にビデオで詳しく説明し
CreateDefaultBuilder()
たすべてのメソッド。
今、あなただけ知っている必要がありますCreateDefaultBuilder()
方法は存在するサーバー上に構成されたデフォルト値の作成プログラム。これは、サーバ、使用の一部として提供されるIWebHostBuilder
インターフェイスUseStartup()
を設定するための拡張メソッドStartup
クラス。あなたが拡張メソッドの概念に精通していない場合は、クラスを補うために行く必要があります。
Microsoftの規則によると、ASP.NETコア起動クラス名Startup
。このクラスには二つの方法があります。
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{ }
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.Run(async (context) =>
{
await context.Response.WriteAsync("Hello World!");
});
}
}
C#の
唯一の2つのクラスメソッドであるが、スタートアップが、この方法は、2つの非常に重要なことをしました:
ConfigureServices()
アプリケーション・サービス・メソッドを構成するために必要なConfigure()
アプリケーションの要求処理パイプラインの構成方法
私たちは、これらの2つの方法の役割は非常に重要であることを理解します。
今後の記事では、我々は両方の方法かなりの使用となります。我々は印象を深める必要がある多くの回。
同様の考えている場合:個人的なマイクロ・シグナルを追加へようこそ。
私だけでなく、あなたのための最新のブログをお勧めします、公共の数字の関心を歓迎し、あなたとリソースを待っているより多くの驚きがあります!一緒に、共通の進歩を学びます!