C# 使用IConfigurationSection反序列化json失败

C# 使用IConfigurationSection反序列化json失败,c#,json,C#,Json,我想反序列化一些json。 JSON看起来像(代码片段): 当我想反序列化此文件时: Configuration.GetSection(“Akka”).Get() 它因连字符而失败。 使用newtonsoft,反序列化可以正常进行。GetSection()不会反序列化设置。这是在构建配置对象时发生的。来自所有提供程序的所有设置都以键/值对的形式加载和存储Get尝试将这些设置映射/绑定到您传递的对象。在这一步中根本不使用JSON.NET。简单的解决方法是不使用破折号。json设置文件旨在为您的应用

我想反序列化一些json。 JSON看起来像(代码片段):

当我想反序列化此文件时:
Configuration.GetSection(“Akka”).Get()

它因连字符而失败。
使用newtonsoft,反序列化可以正常进行。

GetSection()
不会反序列化设置。这是在构建配置对象时发生的。来自所有提供程序的所有设置都以键/值对的形式加载和存储
Get
尝试将这些设置映射/绑定到您传递的对象。在这一步中根本不使用JSON.NET。简单的解决方法是不使用破折号。json设置文件旨在为您的应用程序服务,而不是我理解的其他方式。不幸的是,我需要在Akka.net系统的配置中使用破折号形式的Json。它只接受启动时的日志配置,而不是不带破折号的日志配置。我现在使用的是一种变通方法,比如:“var config=JsonConvert.SerializeObject(new{akka=Configuration.GetSection(“akka”).Get()};”该解决方法不加载对象,而是重新创建
Akka
部分中包含的JSON字符串。如果
GetSection()
不反序列化设置,则可以得到这样的结果。这是在构建配置对象时发生的。来自所有提供程序的所有设置都以键/值对的形式加载和存储
Get
尝试将这些设置映射/绑定到您传递的对象。在这一步中根本不使用JSON.NET。简单的解决方法是不使用破折号。json设置文件旨在为您的应用程序服务,而不是我理解的其他方式。不幸的是,我需要在Akka.net系统的配置中使用破折号形式的Json。它只接受启动时的日志配置,而不是不带破折号的日志配置。我现在使用的是一种变通方法,比如:“var config=JsonConvert.SerializeObject(new{akka=Configuration.GetSection(“akka”).Get()};”该解决方法不加载对象,而是重新创建
Akka
部分中包含的JSON字符串。你可以用它来做
{
   "Akka": {
       "log-config-on-start": "true"
   }
}
public class AkkaConfig
{
   [JsonProperty("log-config-on-start")]
   public string logconfigonstart { get; set; }
}