新しいプロジェクトを作成するために、NETCoreウェブAPI、それは我々が使用する方法を見て、Startup.csにIConfigurationとIOptionsを使用して開始します。
IConfigurationがロードされたメモリキーと値のペア、JSONまたはXML設定ファイルすることができ、負荷設定値に使用されている、我々は通常、デフォルトのappsettings.jsonをロードするために使用されます。
1.注入IConfiguration
スタートアップの実行に時間が、IConfigurationがサービスに注入された、と私たちは余分な注入されたコードを追加する必要はありません、デフォルトでは、次のようなコードインジェクションを隠してStartup.csに理解できるappsettings.jsonファイルを読むことです。
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) .AddEnvironmentVariables(); Configuration = builder.Build(); services.AddSingleton<IConfiguration>(Configuration);
2.使用IConfiguration
appsettings.jsonについてレッツ・セット
{
"test1":"v1", "test2":{ "key1":"v2", "key2":"v3", "key3":4, "key4":true } }
直接コンストラクタのコントローラで受信IConfiguration
私たちは、オブジェクトの値は、結腸のみを追加する必要がされている場合appsettings.json取得の値は、シンプルで見ることができます。
オブジェクトを取得するための良い方法はIOptionsは、私たちが見に行くされています。
3.塗りつぶしIOptions
OptionSample最初IOptionsインタフェースを実装するクラスのニーズを定義します。
その後、注入コードは非常に簡単です
services.Configure<OptionSample>(Configuration.GetSection("test2"));
これは、次のコードワードに相当します
OptionSample sample = new OptionSample(); sample.key1 = Configration["test2:key1"]; sample.key2 = Configration["test2:key2"]; sample.key3 = Configration["test2:key3"]; sample.key4 = Configration["test2:key4"]; services.AddSingle<IOptions<OptionSample>>(sample);
4. IOptions
コンストラクタでこれと同じパスパラメータ
私たちは、NETCoreユビキタス依存性の注入で見ることができます。ソース参照のGithub
著者:voxerの
リンクします。https://www.jianshu.com/p/b9416867e6e6
出典:ジェーンの本が
著者によって著作権で保護されています。著者は認可商業転載してください接触、非商用の転載は、ソースを明記してください。