appsettings.json值不表示反序列化对象向上

问题描述 投票:-2回答:1

我有一个排队这样的元素JSON文件:

{
     "Connection": 
      {
        "data": "...connection string..."
      }
     "Log":
     { 
       "stuff": " value"
     }
etc...
}

我有这样的模式:

 public class Connection
    {
        public string data { get; set; }
    } 



   public class RootObject
    {
        public Connection Connection { get; set; }
    }

并试图填充这种方式:

   using (StreamReader r = new StreamReader("appsettings.json"))
        {
            string json = r.ReadToEnd();
           var root = JsonConvert.DeserializeObject<RootObject>(json);        
       }

JSON字符串得到预期整个文件,但具体的值(数据)不填充 - 至少我不能访问它。数据是DeserializeObject线之后为空。

我需要提到它更具体?这是在JSON文件的多个值之一。

c# .net json json.net
1个回答
2
投票

您的JSON数据具有上述Connection一个水平,所以你不会看到它。

你需要一些包装类。 var myData = JsonConvert.DeserializeObject<MyData>(stringValue);

public class MyData{
  public ConnectionClass Connection {get;set;}
}

public ConnectionClass{
  [JsonProperty("data")] // to keep code styling consistent
  public string Data {get;set;}
}
© www.soinside.com 2019 - 2024. All rights reserved.