是否可以在Windows窗体下批量插入Google Firebase数据库中的记录?

问题描述 投票:0回答:1

以下使用Firesharp将一条记录插入到Google Firebase的代码

在Windows窗体下c#的libarary,但我想在一个处插入批量记录,例如在sql SQL server中

bulk.DestinationTableName = "test";
    bulk.WriteToServer(table);

用于将一条记录插入firebase的代码

class Student
{
    public string FullName { get; set; }
    public string RollNo { get; set; }
    public string Grade { get; set; }
    public string Section { get; set; }
}
IFirebaseConfig ifc = new FirebaseConfig()
    {
        AuthSecret= "_AuthSecret",
        BasePath= "_BasePath"
    };

 IFirebaseClient client;
Student std = new Student()
            {
                FullName=nameTbox.Text,
                RollNo=rollTbox.Text,
                Grade=gradeTbox.Text,
                Section=secTbox.Text
            };
            var set = client.Set(@"Students/"+ rollTbox.Text,std);
c# firebase windows-forms-designer
1个回答
1
投票
Firebase数据库API没有针对批量写入的特定操作。如果您想一次性写入更多数据,则只需将更多数据传递到现有方法之一。

这里要记住的几件事:

    在某个位置调用Set会将该位置上的所有现有数据替换为您传入的新数据。
  1. 呼叫Push将您传入的数据写在新的子位置,并在该位置下具有唯一的名称。
  2. 调用Update将使用您传入的新数据更新该位置中的现有数据。
  • 对于列表中的其他个人,通常将使用Push,以便Firebase为新数据生成一个唯一的名称(此刻以-L...开头。]

    对于写入/更新多个子代,通常使用Update,因为这样可以在不干扰现有数据的情况下写入新数据。在这种情况下,Firebase不会为您生成密钥,因此您必须确保数据的唯一密钥已经存在于对Update的调用中。

    后者可能看起来像这样:

    var students = new Dictionary<string, Student> { { Guid.NewGuid().ToString("N"), new Student() { ... } }, { Guid.NewGuid().ToString("N"), new Student() { ... } }, { Guid.NewGuid().ToString("N"), new Student() { ... } } }; await _client.UpdateAsync("Students", students);

  • © www.soinside.com 2019 - 2024. All rights reserved.