Json.net自定义序列化器;没有双/简单报价的输出

时间:2014-04-21 18:33:30

标签: c# json.net

在我的自定义序列化程序中,我执行以下操作

var gridHeader = (GridHeader)value;
var jsonHeaderList = new JArray();

foreach (var columnDefinition in gridHeader.ColumnDefinitionList)
{
    var jsonHeader = new JObject();
    jsonHeader.Add(new JProperty("field", columnDefinition.Name));
    jsonHeader.Add(new JProperty("title", columnDefinition.Text));
    jsonHeaderList.Add(jsonHeader);
}

jsonHeaderList.WriteTo(writer);

以下是输出的示例:

[ { "field" : "something", "title" : "something" }, { "field" : "something", "title" : "something" } ] 

这里最大的问题是我需要输出:

[ { field : "something", title : "something" }, { field : "something", title : "something" } ]

注意区别?该字段和标题没有双引号。

尝试用Json.net做一些事情,以确保那些双引号不存在,但到目前为止没有正面结果......

1 个答案:

答案 0 :(得分:2)

你要求的是一个javascript对象,它与JSON不同(虽然非常接近)。

如果您在json上使用JSON.parse(),您将获得所需的格式。