从JSON中检索嵌套的数据,而没有特定的键
嗨,我是Firebase的新手,并尝试使用嵌套数据从实时数据库中检索数据。 问题是,当我试图在没有特定键的情况下检索时,它不会检索并会给我带来错误:
解析值时遇到的意外角色:[。小路 '['Loubert Anne']。日期',第1行,位置40。
private void frm_Attendance_Load(object sender, EventArgs e) {
try {
client = new FireSharp.FirebaseClient(fcon);
FirebaseResponse res = client.Get("Users");
Dictionary < string, Names > data = JsonConvert.DeserializeObject < Dictionary < string, Names >> (res.Body.ToString());
PopulateDataGrid(data);
} catch {
MessageBox.Show("Connection failure");
}
}
private void PopulateDataGrid(Dictionary < string, Names > record) {
dataGridView1.Rows.Clear();
dataGridView1.Columns.Clear();
dataGridView1.Columns.Add("fullname", "FullName");
dataGridView1.Columns.Add("category", "Category");
dataGridView1.Columns.Add("date", "Date");
dataGridView1.Columns.Add("timein", "TimeIn");
dataGridView1.Columns.Add("timeout", "TimeOut");
dataGridView1.Columns.Add("duration", "Duration");
dataGridView1.Columns.Add("remarks", "Remarks");
dataGridView1.Columns.Add("status", "Status");
foreach(var item1 in record) {
FirebaseResponse resp = client.Get("Users/" + item1.Key);
Dictionary < string, Datas > datas = JsonConvert.DeserializeObject < Dictionary < string, Datas >> (resp.Body.ToString());
foreach(var item2 in datas) {
dataGridView1.Rows.Add(item1.Key, item1.Value.Category, item2.Value.Date, item2.Value.TimeIn, item2.Value.TimeOut, item2.Value.Duration, item2.Value.Remarks, item1.Value.Status);
}
}
}
,
class Names
{
public string Fullname { get; set; }
public string Category { get; set; }
public string Status { get; set; }
public string Date { get; set; }
public string Duration { get; set; }
public string Remarks { get; set; }
public string TimeIn { get; set; }
public string TimeOut { get; set; }
}
这是[嵌套数据库] [1],我试图检索
Hi im new to firebase and trying to retrieve data from realtime database with nested data.
The problem is when im trying to retrieve without the specific key it wont retrieve and will give me the error:
Unexpected character encountered while parsing value: [. Path
'['Loubert Anne'].Date', line 1, position 40.
private void frm_Attendance_Load(object sender, EventArgs e) {
try {
client = new FireSharp.FirebaseClient(fcon);
FirebaseResponse res = client.Get("Users");
Dictionary < string, Names > data = JsonConvert.DeserializeObject < Dictionary < string, Names >> (res.Body.ToString());
PopulateDataGrid(data);
} catch {
MessageBox.Show("Connection failure");
}
}
private void PopulateDataGrid(Dictionary < string, Names > record) {
dataGridView1.Rows.Clear();
dataGridView1.Columns.Clear();
dataGridView1.Columns.Add("fullname", "FullName");
dataGridView1.Columns.Add("category", "Category");
dataGridView1.Columns.Add("date", "Date");
dataGridView1.Columns.Add("timein", "TimeIn");
dataGridView1.Columns.Add("timeout", "TimeOut");
dataGridView1.Columns.Add("duration", "Duration");
dataGridView1.Columns.Add("remarks", "Remarks");
dataGridView1.Columns.Add("status", "Status");
foreach(var item1 in record) {
FirebaseResponse resp = client.Get("Users/" + item1.Key);
Dictionary < string, Datas > datas = JsonConvert.DeserializeObject < Dictionary < string, Datas >> (resp.Body.ToString());
foreach(var item2 in datas) {
dataGridView1.Rows.Add(item1.Key, item1.Value.Category, item2.Value.Date, item2.Value.TimeIn, item2.Value.TimeOut, item2.Value.Duration, item2.Value.Remarks, item1.Value.Status);
}
}
}
Names.cs
class Names
{
public string Fullname { get; set; }
public string Category { get; set; }
public string Status { get; set; }
public string Date { get; set; }
public string Duration { get; set; }
public string Remarks { get; set; }
public string TimeIn { get; set; }
public string TimeOut { get; set; }
}
and this is the [Nested Database][1] that im trying to retrieve
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论