私のチームでは、ASP.NET Core RC1 WebアプリケーションをRTMに移行しています。内部的にStaticFileMiddleware
のインスタンスを作成するカスタムミドルウェアがあります。 RC1ではそれが可能に使用される:Asp.Net Core RTM StaticFileMiddleware:IOptions <StaticFileOptions>を渡す方法は?
// ctor signature:
StaticFileMiddleware(RequestDelegate next, IHostingEnvironment hostingEnv,
StaticFileOptions options, // <--
ILoggerFactory loggerFactory);
と我々は簡単にStaticFileOptions
のインスタンスを作成して渡すことができます。
// ctor signature:
StaticFileMiddleware(RequestDelegate next, IHostingEnvironment hostingEnv,
IOptions<StaticFileOptions> options, // <--
ILoggerFactory loggerFactory);
と私はIOptions<StaticFileOptions>
を作成する方法については考えている:今RTMです。実際には、T
インスタンスを持ち、一般的にIOptions<T>
を作成する方法がわかりません。
Latest reference docページトップに戻るGoogleの結果は、ヒントを提供しません。 StaticFileMiddleware
の検索結果は、一般的に非常に不足しています。
今後の進め方は誰でも知っていますか?これは実際に私たちが移行を進めるのを妨げています。 TA
'optionsパターン' docsを見てください。https://docs.asp.net/en/latest/fundamentals/configuration.html#using-options-and-configuration-objects –
コメントありがとうございます。私はそれを知っています、既に 'configure'オプションはビルドされた 'IConfiguration'設定からのセクションから取得し、' IOptions 'を他の部分に注入します。現在のシナリオでは、実行時のロジックと値に応じて、いくつかのメソッドの中に 'StaticFileOptions'を作成し、同じメソッドでミドルウェアに渡す必要があります。では、これを2つに分割する必要があります。これは、DIを使用してオプションインスタンスを作成して登録する部分と、そのインスタンスを挿入して使用する部分です。 –
superjos
このようなものを使ってみませんか? 'services.Configure(オプション=> { //あなたのロジック options.DefaultContentType =" <コンテンツタイプ> "; //他のオプションを設定 });'あなたの場合は十分ではありませんか? –