ASP.NET Core 支持新的配置系统,如下所示: https://docs.asp.net/en/latest/fundamentals/configuration.html
.NET Core 控制台应用程序是否也支持此模型?
如果不是之前的 app.config
和 ConfigurationManager
模型有什么不同?
最佳答案
对于 .NET Core 2.0 控制台应用程序,我执行了以下操作:
- 在项目的根目录下创建一个名为 appsettings.json 的新文件(文件名可以是任何名称)
- 将我的特定设置作为 json 添加到该文件。例如:
{ "myKey1" : "my test value 1", "myKey2" : "my test value 2", "foo" : "bar" }
配置在构建项目时将文件复制到输出目录(在 VS -> 解决方案资源管理器中 -> 右键单击文件 -> 选择“属性” -> 高级 -> 复制到输出目录 -> 选择“始终复制”)
在我的项目中安装以下 nuget 包:
- Microsoft.Extensions.Configuration.Json
将以下内容添加到 Program.cs(或
Main()
所在的位置):static void Main(string[] args) { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json"); var configuration = builder.Build(); // rest of code... }
然后使用以下任一方式读取值:
string myKey1 = configuration["myKey1"]; Console.WriteLine(myKey1); string foo = configuration.GetSection("foo").Value; Console.WriteLine(foo);
关于c# - .NET Core 控制台应用程序的 ASP.NET Core 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38114761/