我正在尝试检索一个解析对象,但我遇到了一些问题,这是我用来定义业务对象的类。它抛出以下错误字典中没有给定的键。我只是不确定课程的问题是什么?
public class Clinics
{
public string ObjectId { get; set; }
public string Name { get; set; }
public string Address1 { get; set; }
public string Data1 { get; set; }
public string PostCode { get; set; }
public string locationGeo { get; set; }
public DateTime createdAt { get; set; }
public string Town { get; set; }
public DateTime updatedAt { get; set; }
public string Data2 { get; set; }
public string Data3 { get; set; }
public string Lat { get; set; }
public string Lng { get; set; }
}
这就是我从parse.com获取数据集的方式
public static async Task<List<Clinics>> GetAll ()
{
var query = ParseObject.GetQuery ("clinics").OrderBy ("Name");
var ie = await query.FindAsync ();
var tl = new List<Clinics> ();
foreach (var t in ie) {
tl.Add (FromParseObject (t));
}
return tl;
}
FromParseObect
static Clinics FromParseObject (ParseObject po)
{
var t = new Clinics();
t.Lat = Convert.ToString(po["Lat"]);
//t.Lng= Convert.ToString(po["Long"]);
t.Name = Convert.ToString(po["Name"]);
t.Address1 = "";
t.Data1 = "";
t.Data2 = "";
t.Data3 = "";
t.locationGeo = "";
t.Town = "";
t.PostCode = "";
return t;
}
我错过了某种标准的解析定义,因为我收到了以下错误,所以我应该在这个定义中解析错误
字典中没有给定的密钥。
答案 0 :(得分:0)
正如@Jason所提到的,你应该指定导致错误的行。
我会假设你指的是注释掉的行是错误的。
您尝试访问的索引:
t.Lng= Convert.ToString(po["Long"]);
与属性不同:
public string Lng { get; set; }
“Long”vs“Lng”。