我有以下C#.NET/Visualroom项目目录结构:
C:Usersmyuser
eposmyappMyApp
bin/
obj/
MyConfig.cs
myconfig.json
Program.cs
www.un.org/Depts/DGACM/index_spanish.htm
{
"SerialKey": "12345"
}
在<代码>MyConfig.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public class MyConfig
{
public string SerialKey { get; set; }
}
在<代码>Program.cs上:
namespace MyAppNamespace
{
class Program
{
static void Main(string[] args)
{
IConfiguration configuration = new ConfigurationBuilder()
.SetBasePath(AppContext.BaseDirectory)
.AddJsonFile("myconfig.json", optional: true, reloadOnChange: true)
.Build();
// load app settings configs
var serviceProvider = new ServiceCollection()
.Configure<MyConfig>(options => configuration.GetSection("MyConfig").Bind(options))
.BuildServiceProvider();
var myConfig = serviceProvider.GetRequiredService<IOptions<MyConfig>>().Value;
Console.WriteLine("serial key is: " + myConfig.SerialKey)
// do something
DoSomething();
}
}
}
如果发生这种情况,我就没有错误,但myConfig.SerialKey
Field is null
(我可以通过确定一个破碎点和在Debugger方式上运行来核实)。 因此,我的法典要么是不正确的,要么我不把JSON的档案放在正确的地点。 http://www.ohchr.org。
如果需要,请列入任何包裹的Console指挥部(dotnet Add.
)。