添加json文件,命名爲appsettings.json,設置文件屬性 若是較新則複製
。添加內容以下git
{ "MyWords" : "Hello World!" }
依次添加如下引用github
Microsoft.Extensions.Configuration Microsoft.Extensions.Configuration.FileExtensions Microsoft.Extensions.Configuration.Json Microsoft.Extensions.Hosting
在看到《.NET 通用主機》的文章以後,認爲能夠嘗試藉助GenericHost更優雅的在Console項目中使用appsetings.json進行項目配置。
Main入口代碼以下:json
using System; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; namespace ConsoleApp1 { class Program { private static IConfiguration _appConfiguration; static void Main(string[] args) { var hostBuilder = new HostBuilder().ConfigureAppConfiguration((hostContext, configApp) => { var hostingEnvironment = hostContext.HostingEnvironment; _appConfiguration = AppConfigurations.Get(hostingEnvironment.ContentRootPath, hostingEnvironment.EnvironmentName); }).ConfigureServices((hostContext, services) => { //注入IConfiguration到DI容器 services.AddSingleton(_appConfiguration); //注入MyService到DI容器 services.AddSingleton<IMyService, MyService>(); }); //初始化通用主機 var host = hostBuilder.Build(); //獲取MyService var myService = host.Services.GetService<IMyService>(); //調用SayMyWords方法 myService.SayMyWords(); Console.ReadKey(); } } }
說明:ui