反序列化基于索引的json对象- c#

本文关键字:json 对象 索引 于索引 反序列化 | 更新日期: 2023-09-27 18:05:58

我使用Newtonsoft和Newtonsoft. json。我有下面的json:

string strJson_StorageInfo = "[{10:'"test'"}, {20:'"test1'"}]";
List<Dictionary<int, string>> jobj = (List<Dictionary<int, string>>) JsonConvert.DeserializeObject(strJson_StorageInfo, typeof(List<Dictionary<int, string>>));
foreach (Dictionary<int, string> dicStorageInfo in jobj) {
   foreach (KeyValuePair<int, string> StorageItem in dicStorageInfo) {
      Response.Write("key : " + StorageItem.Key + " , value : " + StorageItem.Value + "</br>"); 
   }
}

我需要反序列化这个。谁能告诉我一个好方法?提前感谢

反序列化基于索引的json对象- c#

可以使用下面提到的代码

string strJson_StorageInfo = "[{10:'"test'"}, {20:'"test1'"}]";
var abc = JsonConvert.DeserializeObject <List<Dictionary<int, string>>>(strJson_StorageInfo);

后,您可以从中找到键和值

  var K = abc.Select(p => p.Keys);
  var V = abc.Select(p => p.Values);

ok。我妥协了Json格式字符串。我已经改变了json字符串。我如何将JSON反序列化为一个简单的Dictionary<string,string>在ASP.NET ?。谢谢。

这对我有用。我不确定它是否在asp.net 2.0中工作

string strJson_StorageInfo = "[{10:'"test'"}, {20:'"test1'"}]";
List<Dictionary<int, string>> values = JsonConvert.DeserializeObject<List<Dictionary<int, string>>>(strJson_StorageInfo);
foreach (var items in values)
{
    foreach (var item in items)
    {
        Label1.Text += "Key: " + item.Key.ToString() + " Value: " + item.Value.ToString() + "<br/>";
    }
}