2014-10-02 42 views
-1

我正在序列化一个List<T>,我想这是一个对象数组,当您考虑它时。当序列化的人口List<T>,我得到类似如下的结果:JSON.Net,自定义列表序列化<T>

[ 
    { 
    "foo": "a1", 
    "bar": "b1" 
    }, 
    { 
    "foo": "a2", 
    "bar": "b2" 
    }, 
    { 
    "foo": "a3", 
    "bar": "b3" 
    } 
] 

这当然是对象的JSON数组正如你所期望。但是,我有不同的需求。我需要将List<T>的序列化为单独的对象,如图所示。

{ 
    "foo": "a1", 
    "bar": "b1" 
} 
{ 
    "foo": "a2", 
    "bar": "b2" 
} 
{ 
    "foo": "a3", 
    "bar": "b3" 
} 

我打算使用正则表达式来更新JSON字符串,但在此之前我通过这一步去了,我想知道,如果有一个在现成的解决方案在json.net处理特定的格式化需求。当然,我没有阅读每一行文件,但我已经阅读了一些文件,没有什么突出的。

谢谢。

+1

你能序列化它自己的列表中的每一项?如果需要,您可以在以后连接结果。 – Matthew 2014-10-02 14:42:06

+11

这是无效的json,所以我怀疑你可以让json.net输出它。你为什么需要这种格式? – 2014-10-02 14:43:19

+0

也很想知道杰森P的问题的答案。如果您确实需要发布的内容,则可以对您的列表进行foreach并将每个元素分别序列化为列表。 – 2014-10-02 14:47:44

回答

-2

你为什么不尝试使用NEWTONSOFT它将使所有的工作,你只需要实现库,并返回的Json准备使用

public static string ToJson(object obj) 
{ 

    //Remember to JSON.parse() in aspx so you can work with data returned 
    return Newtonsoft.Json.JsonConvert.SerializeObject(obj); 
} 

希望这有助于你

+0

JSON.NET == Newtonsoft。他已经在使用它,他想要自定义序列化。 – Vache 2014-10-02 14:54:42

+0

对不起我的错,没有得到答案:( – Kross 2014-10-02 14:58:32

1

我的做法是错误的这里。真正的问题在于json被摄入的目标。与其诱饵json.net进入序列化无效的json,我将重新关注我的精力为什么目标系统不正确地解释我的json文件。

相关问题