我正在尝试将以下 JSON 反序列化为我的 Win 8 应用程序中的对象:
{
"success":true,
"pharmacies":[
{
"name":"Test Pharmacy",
"phone":null,
"description":"sample description",
"pharmacyid":"1234567",
"pic":"/1341864197.png",
"address":"211 Warren St., #205",
"city":"Newark",
"state":"NJ",
"zipcode":"07103",
"delivery":true,
"dob_check":false,
"name_check":false,
"can_pickup":true,
"barcode_template":"9999999XX"
}
]
}
这是我正在使用的模型:
public class PharmacyList
{
public List<Pharmacy> pharmacies { get; set; }
}
public class Pharmacy
{
public string pharmacyid { get; set; }
public string name { get; set; }
public string phone { get; set; }
}
这是我用来反序列化的代码
json = await results.Content.ReadAsStringAsync();
List<PharmacyList> p = JsonConvert.DeserializeObject<List<PharmacyList>>(json);
我收到以下异常:
: 无法将当前 JSON 对象(例如 {"name":"value"})反序列化为类型 'System.Collections.Generic.List`1[PharmacyHC.Models.PharmacyList]' 因为该类型需要 JSON 数组(例如 [1 ,2,3]) 以正确反序列化。
我是在尝试反序列化为错误的类型,还是应该在 JSON 以不同方式从 API 返回时对其进行格式化?