繁体   English   中英

JsonConvert.SerializeObject添加默认结果名称

[英]JsonConvert.SerializeObject adds default Result name

每当我尝试使用JsonConvert.SerializeObject序列化对象时,它都会将默认数组名称添加为“ d”

        json = JsonConvert.SerializeObject(new
        {
            resultsets = new List<Result>()
                {
                    new Result { id = 1, value = "ABC", info = "ABC" },
                    new Result { id = 2, value = "JKL", info = "JKL" },
                    new Result { id = 3, value = "GSG", info = "DYU" }
                }
        });

        return json;

杰森的回应是

{
   "d": "{"resultsets":[{"id":1,"value":"ABC","info":"ABC"},{"id":2,"value":"JKL","info":"JKL"},{"id":3,"value":"GSG","info":"DYU"}]}"
}

其中添加了名称为“ d”的额外数组

我想要简单的数组如下

{"resultsets":[{"id":1,"value":"ABC","info":"ABC"},{"id":2,"value":"JKL","info":"JKL"},{"id":3,"value":"GSG","info":"DYU"}]}

这是为了防止直接执行脚本:

假设您要返回一个普通数组。 以下不是有效的JS语句:

{"d": [1]}

而这是:

[1]

您可以在这里找到更多信息:

http://encosia.com/a-breaking-change-between-versions-of-aspnet-ajax/#comment-34045

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM