在 Xamarin.Forms 应用程序中从 Firebase 获取数据

问题描述

您好,我正在将我的应用从 MysqL 数据库迁移到 Firebase,但是我无法在我的 c# 代码和 firebase 设置之间建立连接。

所以我有一个如下所示的 Firestore 数据库

[Firebase 数据库,其中包含一条带有自动生成 ID 的记录的“Persons”集合。此记录包含管理员(设置为 true)和全名(设置为 PJ)][1] [1]:https://i.stack.imgur.com/FFF9A.png

我有这个代码

        public static async Task<List<Person>> GetAllPersons()
    {

        return (await firebase
          .Child("Persons")
          .OnceAsync<Person>()).Select(item => new Person
          {
              Fullname = item.Object.Fullname,Admin = item.Object.Admin
          }).ToList();
    }

但是当我尝试执行该函数时,我收到此错误消息:

Firebase.Database.FirebaseException: Exception occured while processing the 
request.
Url: https://moveeasy-72594.firebaseio.com/Persons/.json
Request Data: 
Response: {
  "error" : "404 Not Found"
}

我的规则是这样的:

rules_version = '2';
service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read,write: if request.auth == null;
    }
  }
}

任何建议将不胜感激

解决方法

我怀疑您可能使用了错误的 URL 来访问您的数据库。如果您创建的数据库位于西欧,则其 URL 是以下之一:

尝试使用这些网址初始化 Firebase,看看是否适合您。