从C#返回具有动态属性的JSON(UTC毫秒名称)

本文关键字:UTC JSON 返回 属性 动态 | 更新日期: 2023-09-27 18:19:59

你好,我正在切换到使用AJAX的JSON实现,需要一些帮助来理解这一点。

数据:数据中有两部分,第一部分是UTC时间的日期(以毫秒为单位),第二部分是值。如果我应该将其嵌套为值数组或数据对象,请提出建议。

有人能告诉我这是如何翻译成JSON世界的吗(这是一个JSON对象,对吧?),和

  1. C#对象将生成这个JSON对象(映射,并格式化为UTC时间的毫秒)
  2. 来自JSONutils datamember、dataProperty和None选项之间的区别是什么
  3. 要获取JSON数据库,在Action中,我应该返回类型JSON还是ActionResult
  4. 在HTML/JS方面,我将如何从ActonResult或JSON 中解析出来

    {
        "943721039":4,
        "946706653":7,
        "946706350":6,
        "946728112":1
    }
    

从C#返回具有动态属性的JSON(UTC毫秒名称)

3-4。只需查看MSDN上的一个简单示例:https://msdn.microsoft.com/en-us/library/system.web.mvc.jsonresult(v=vs.118).aspx

当从e.jquery$.ajax.调用时,这样的方法返回简单的json

  1. 您可以按照David的建议使用dynamic,并为其添加动态属性(使用毫秒名称),例如:将属性动态添加到动态对象

不过,我会尽量避免。为什么不创建一个对象列表,比如{time:'878499204',value:'2'},这样更容易创建和使用。否则,对于json,您基本上需要在客户端使用"for in",这不是最酷的方式。我会这样做:

return Json(new []{ new {time = '878499204', value ='2'}, ... } );

这将生成:

[ { time: '878499204', value ='2'}, .... ]

您还可以对序列化进行自定义,并将字典序列化为所需的格式,或者自己创建JSON,只需将其构建为字符串即可。

  1. 阅读手册