আমি এই JSON আছে:
[
{
"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"
}
]
এবং আমার এই ক্লাসগুলি রয়েছে:
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; }
}
আমি নীচের কোডটি ব্যবহার করে উপরের জেএসওনকে ডিসিজায়াল করার চেষ্টা করছি:
var objResponse1 = JsonConvert.DeserializeObject<RetrieveMultipleResponse>(JsonStr);
তবে আমি এই ত্রুটিটি পাচ্ছি:
বর্তমান JSON অ্যারে (উদাহরণস্বরূপ [1,2,3]) কে 'পরীক্ষায় টাইপ করুন না-করা যায় না et মোডেল etপ্রিটারিভ মাল্টিপল রিসার্ফোনস' কারণ সঠিকভাবে ডিসিরিয়ালাইজ করতে টাইপটির জন্য একটি JSON অবজেক্ট (যেমন {"নাম": "মান"।) প্রয়োজন। এই ত্রুটিটি সমাধানের জন্য হয় হয় JSON কে একটি JSON অবজেক্টে (যেমন {"নাম": "মান" to) এ পরিবর্তন করুন বা deserialized প্রকারকে একটি অ্যারে বা এমন একটি সংকলন পরিবর্তন করুন যা সংগ্রহের ইন্টারফেস (যেমন আইকোলিকেশন, আইলিস্ট) প্রয়োগ করে যা তালিকা করতে পারে একটি JSON অ্যারে থেকে deserialized করা। জেএসএনআরএআর্ট্রিবিউটকে কোনও জেএসওএন অ্যারে থেকে ডিসিরিয়ালাইজড করার জন্য বাধ্য করতে প্রকারের সাথে যুক্ত করা যেতে পারে। পথ '', লাইন 1, অবস্থান 1।