将json映射到C#对象

时间:2014-02-12 21:11:37

标签: c# json parsing deserialization

我有一个像这样生成的json文件

[
    {
        "test1": "Pirates", 
        "test2": "Hello World"
    },
    {
        "test1": "Pirates", 
        "test2": "Hello World"
    }
]

从我遇到的其中一个问题中,我使用了此链接Json 2 Cshartp Object并查看了应该制作的课程。但是......我认为它应该是一个阵列,但它没有名字?所以我试着像这样制作对象

public class pirateships
{
    public string test1 { get; set; }
    public string test2 { get; set; }
}

然后使用

调用DeserializeObject<T>()
pirateships coords = JsonConvert.DeserializeObject<pirateships>(reader.ReadToEnd());

但它仍然说它无法正确反序列化。我试过让它成为一系列盗版但仍然失败了。非常感谢帮助人员。

1 个答案:

答案 0 :(得分:5)

您的JSON字符串是pirateships的数组,因此您必须将其反序列化为pirateships[]

pirateships[] coords = JsonConvert.DeserializeObject<pirateships[]>(reader.ReadToEnd());
相关问题