将json映射到C#对象

Iva*_*n S 2 c# parsing json deserialization

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

[
    {
        "test1": "Pirates", 
        "test2": "Hello World"
    },
    {
        "test1": "Pirates", 
        "test2": "Hello World"
    }
]
Run Code Online (Sandbox Code Playgroud)

从我遇到的一个问题中,我使用了这个链接Json 2 Cshartp Object并查看了应该制作的类.但是......我认为它应该是一个阵列,但它没有名字?所以我尝试制作这样的物体

public class pirateships
{
    public string test1 { get; set; }
    public string test2 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

然后DeserializeObject<T>()使用

pirateships coords = JsonConvert.DeserializeObject<pirateships>(reader.ReadToEnd());
Run Code Online (Sandbox Code Playgroud)

但它仍然说它无法正确反序列化.我试过让它成为一系列盗版但仍然失败了.非常感谢您提供协助.

Mar*_*zek 5

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

pirateships[] coords = JsonConvert.DeserializeObject<pirateships[]>(reader.ReadToEnd());
Run Code Online (Sandbox Code Playgroud)