我只想从 Firebase 检索数据到 DataGridView。我拥有的代码已经在检索数据,但是,它将所有内容检索到同一行而不是创建一个新行。我是编码的初学者,所以我真的需要帮助。
我在网上读到 Firebase 不会“计算”数据,因此需要创建一个计数器,因此每次添加或删除数据时,都需要更新。我做到了,它正在工作。我创建了一个加载数据的方法。
private async Task firebaseData()
{
int i = 0;
FirebaseResponse firebaseResponse = await client.GetAsync("Counter/node");
Counter_class counter = firebaseResponse.ResultAs<Counter_class>();
int foodCount = Convert.ToInt32(counter.food_count);
while (true)
{
if (i == foodCount)
{
break;
}
i++;
try
{
FirebaseResponse response2 = await client.GetAsync("Foods/0" + i);
Foods foods = response2.ResultAs<Foods>();
this.dtGProductsList.Rows[0].Cells[0].Value = foods.menuId;
this.dtGProductsList.Rows[0].Cells[1].Value = foods.name;
this.dtGProductsList.Rows[0].Cells[2].Value = foods.image;
this.dtGProductsList.Rows[0].Cells[3].Value = foods.price;
this.dtGProductsList.Rows[0].Cells[4].Value = foods.discount;
this.dtGProductsList.Rows[0].Cells[5].Value = foods.description;
}
catch
{
}
}
MessageBox.Show("Done");
}
OBS:已经存在一个DataTable(dataTable),还有一个DataGridView,它的列(ID、名称、图像、价格、折扣、描述)与.Cells [x]的数量和顺序相匹配。当表单加载时,dtGProductsList.DataSource = dataTable; 我尝试将 [0] 替换为 [i]。
我希望正在检索的数据设置为新行而不是相同的行,并且不跳过行。对不起,如果它太简单了,但我看不到出路。