私はASP.NET Core Webサイト用のサポートライブラリを構築しています。私はいくつかのミドルウェアを有効にする必要があります。ミドルウェアは、他のミドルウェアよりも前に追加する必要があります。、Program.csからミドルウェアを設定する方法はありますか?
IWebHostBuilderで拡張メソッドを作成して、ロギングの設定と同様にサービスを追加できますが、プログラム的な方法でミドルウェアを追加する方法はありません。これを行う方法はありますか? WebHost/WebHostBuilderのソースを見ると、何も飛び出さなかった。
最初のコメントがあれば、私は十分にはっきりしていないかもしれません。私はミドルウェアの作成方法を知っています。私がしようとしているのは、コンフィグレーション(IApplicationBuilderアプリケーション)メソッドがフレームワークによって起動時に呼び出されたときに、私のミドルウェアがすでに配置されていることを確認することです。スタートアップに先立ってServiceConfigurationを作成して作成することも可能です。だから、
public static IWebHostBuilder AddPayscaleHostingServices(this IWebHostBuilder webHostBuilder, string serviceName)
{
return webHostBuilder.ConfigureServices(collection =>
{
collection.RegisterPayscaleHostingServices();
}).ConfigureLogging(factory =>
{
});
}
のような拡張メソッドは、私の前にwebHostBuilder.Build方法には、いくつかの設定を行うための機能を提供しますが、私はIApplicationBuilder上のミドルウェア/何のための同様の何も表示されません。
おかげで、 エリック
これを参照すると、まずあなた自身の研究を行ってください。
今すぐあなたの
ConfigureServices
方法でIStartupFilter
のシングルトン実装として、スタートアップフィルタを登録します。 https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware – wannadream私はミドルウェアを作成する方法を知っており、私はミドルウェアを追加する方法を知っています。私が知らないのは、ミドルウェアがConfigureメソッドの前に有効になっていることを、Startupクラスで呼び出す方法です。完璧な世界では、ユーザーコードの前にIApplicationBuilderに触れる機会があります。 –