Bu JSON'a sahibim:
[
{
"Attributes": [
{
"Key": "Name",
"Value": {
"Value": "Acc 1",
"Values": [
"Acc 1"
]
}
},
{
"Key": "Id",
"Value": {
"Value": "1",
"Values": [
"1"
]
}
}
],
"Name": "account",
"Id": "1"
},
{
"Attributes": [
{
"Key": "Name",
"Value": {
"Value": "Acc 2",
"Values": [
"Acc 2"
]
}
},
{
"Key": "Id",
"Value": {
"Value": "2",
"Values": [
"2"
]
}
}
],
"Name": "account",
"Id": "2"
},
{
"Attributes": [
{
"Key": "Name",
"Value": {
"Value": "Acc 3",
"Values": [
"Acc 3"
]
}
},
{
"Key": "Id",
"Value": {
"Value": "3",
"Values": [
"3"
]
}
}
],
"Name": "account",
"Id": "2"
}
]
Ve şu derslerim var:
public class RetrieveMultipleResponse
{
public List<Attribute> Attributes { get; set; }
public string Name { get; set; }
public string Id { get; set; }
}
public class Value
{
[JsonProperty("Value")]
public string value { get; set; }
public List<string> Values { get; set; }
}
public class Attribute
{
public string Key { get; set; }
public Value Value { get; set; }
}
Aşağıdaki kodu kullanarak yukarıdaki JSON'un seri halini kaldırmaya çalışıyorum:
var objResponse1 = JsonConvert.DeserializeObject<RetrieveMultipleResponse>(JsonStr);
ama bu hatayı alıyorum:
Geçerli JSON dizisi (ör. [1,2,3]) 'test.Model.RetrieveMultipleResponse' türüne kaldırılamaz çünkü tür, doğru bir şekilde seriyi kaldırmak için bir JSON nesnesi (ör. {"Name": "değer"}) gerektirir. Bu hatayı düzeltmek için ya JSON'yi bir JSON nesnesine (ör. {"Name": "değer"}) değiştirin veya serileştirilmemiş türü bir dizi veya bir koleksiyon arabirimi (ör. ICollection, IList) uygulayan bir tür olarak değiştirin (ör. ICollection, IList) JSON dizisinden serileştirilmemiş hale getirilebilir. JsonArrayAttribute, bir JSON dizisinden seriyi kaldırmaya zorlamak için türe de eklenebilir. Yol '', satır 1, konum 1.