javascript - 使用 JavaScript json 文件初始化 C# 字典的正确方法?

标签 javascript c# json asp.net-mvc dictionary

我目前在 JavaScript 和用 ASP.Net MVC 5 编程的服务器之间有一个 Web Socket。有谁知道是否有办法在创建 json 文件时将其插入到 C# 字典中?在 JavaScript 中,我可以轻松传递数据,但是如何用这样的 json 格式初始化 C# 字典?

  {"id": "svgContent","children": [
     {"id": "circle1","tag": "path",
     "value": "M0,160A160,160 0 1,1 0,-160A160,160 0 1,1 0,160M0,100A100,100 0 1,0 0,-100A100,100 0 1,0 0,100Z",
"children": [
    { "id": "point", "cx": "-67.59530401363443", "cy": "-93.03695435311894" },
    { "id": "point", "cx": "-109.37149937394265", "cy": "35.53695435311897" },
    { "id": "point", "cx": "1.4083438190194563e-14", "cy": "115" }
  ]

 },
       {"id": "circle2","tag": "path","value": "M0,260A260,260 0 1,1 0,-260A260,260 0 1,1 0,260M0,200A200,200 0 1,0 0,-200A200,200 0 1,0 0,200Z",
"children": [                
    { "id": "point", "cx": "-126.37382924288177", "cy": "-173.93865379061367" },
    { "id": "point", "cx": "-204.477151003458", "cy": "66.43865379061373" },
    { "id": "point", "cx": "2.6329906181668095e-14", "cy": "215" }

    ]

  }

]}

最佳答案

您应该创建一个匹配的类来适应此 JSON 数据模型,然后将数据反序列化到 C# 对象中。

  1. 您应该添加框架 Json.NET
  2. 创建 C# 数据模型
  3. 将数据从 JSON 反序列化为 C# 模型。

数据模型示例:

public class Child2
{
    public string id { get; set; }
    public string cx { get; set; }
    public string cy { get; set; }
}

public class Child
{
    public string id { get; set; }
    public string tag { get; set; }
    public string value { get; set; }
    public List<Child2> children { get; set; }
}

public class RootObject
{
    public string id { get; set; }
    public List<Child> children { get; set; }
}

反序列化示例:

var createdObject = JsonConvert.DeserializeObject<RootObject>(jsonText);

关于javascript - 使用 JavaScript json 文件初始化 C# 字典的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30817540/

相关文章:

c# - 为什么文件不能通过 tcp 在 C# 中的客户端和 C 中的服务器之间正确传输(保存?)?

java - 将无法识别的json数据反序列化为Map JacksonJson

javascript - 如何对两个数组进行json编码并在ajax中使用它们

json - 播放 Json : custom reads one field

javascript - Ember.js 中的 Foundation.js 下拉菜单

javascript - 带有 promise 的链接 jQuery AJAX

javascript - 每日特定时间倒计时

php - 在表单提交后台函数php运行

c# - C# 考试 70-483 引用书的例子有错吗? (父/子线程)

javascript - 路由时 ASP.NET 设计恶化