2ミドルウェアを学ぶAsp.Net Core2.0 + Vs2017 + MVC

最後に変更した後、たとえば、設定方法を続行

公共の 無効設定(IApplicationBuilderのApp、IHostingEnvironmentのENV、
            IWelcomeSeriver welcomeSeriverは)// また、カスタマイズすることができますインターフェイス,,依存性注入、注意がカスタムインターフェイスに登録する必要があり、または見つけることができません
        {
             IF (env.IsDevelopment())
            { 
                app.UseDeveloperExceptionPage (); 
            } 

            app.run(非同期(コンテキスト)=> 
            { 
                文字列購入welcomeSeriver.GetWelcomeMessage =()のために利用できる; // ここでプロファイルの優先コマンドライン>システム変数>開発環境プロファイル>プロファイルであるべきで
                待ちますcontext.Response.WriteAsync(購入可能); 
            }); 
        }

実際のプロジェクトでは、app.Runめったに使われない方法は、この方法は、ミドルウェアの一般的な単純な構成です。

-------------------------------------------------- -------------------------------------------------- ------------------------

通常、app.UseXXXX方法、及び対応する方法はまた、一般的にみなさカプセル化が達成され、また使用することは非常に便利です。

例えばapp.UseWelcomePage();それにコードの実行は、それがルートがウェルカムページを提供することができる、切頭ウェルカムページを返します。

app.UseWelcomePage(新しいWelcomePageOptions { 
                パス = " / MyWelcome " 
            })。

アクセスはlocalhost:ときXXXX / MyWelcome、ウェルカムページに戻ります。

-------------------------------------------------- -------------------------------------------------- ----------------------------

また、直接app.Use()を使用することができ、ここでは例を書きます

公共 ボイド設定(APP IApplicationBuilder、IHostingEnvironment ENV、IConfiguration構成)
        { 
            // IF(env.IsDevelopment())
             // {
             //     app.UseDeveloperExceptionPage();
             // }
             // 次にRequestDelegateパイプを表すオブジェクトここで、次の中間 
            app.Use(次=> 
            { 
                返す 非同期をのHttpContext => 
                { 
                    文字列 STR = httpContext.Request.Path;
                     // !ログインパス場合、PLS戻るログイン
                    IF(str.ToLower()。 (含まれて" ログイン" ))
                    { 
                        のawait httpContext.Response.WriteAsync(" PLSログイン!" ); 
                    } 
                    // そうでない場合、次の中間
                    
                    { 
                        待つ次に(のHttpContext); 
                    } 
                }; 
            }); 

            // パスがある場合/ MyWelcome、次のページをしない歓迎に戻り 
            app.UseWelcomePage(新しい新しいWelcomePageOptions { 
                パス = / MyWelcome 
            }); 

            // この実行の場合は、DefaultWords出力ノードから設定ファイルを読み出す 
            (app.runを非同期(コンテキスト)=> 
            { 
                文字列 STR =構成[ " DefaultWords " ]。
                待つcontext.Response.WriteAsync(STR)を、
            }); 
        }

ここでも見ることができ、中間の複数の(それが中断されていない場合)の順序で行われます

 

おすすめ

転載: www.cnblogs.com/luyShare/p/11599384.html