首页 > 解决方案 > 从 Google Cloud Firestore 获取数据

问题描述

[![我无法将集合和文档的数据从android项目传递到PCL,我尝试抛出空引用异常的方式请帮助我。谢谢

Android项目获取数据

   FirestoreDb firestore = FirestoreDb.Create("iyf-raipur");
    public async Task<IEnumerable<T>> GetCouncelorsAsync()
    {
        Query preachers = firestore.Collection(nameof(T));
        QuerySnapshot snapshots = await preachers.GetSnapshotAsync();
        foreach(DocumentSnapshot documentSnapshot in snapshots.Documents)
        {
            T data = documentSnapshot.ConvertTo<T>();
            System.Console.WriteLine();
        }

        return (IEnumerable<T>)preachers;

    }

PCL ViewModel 代码

     private ObservableCollection<Preacher> preachers;
    private IRepository<Preacher> _repository = DependencyService.Get<IRepository<Preacher>>();
    public PreacherViewModel()
    {
        Preachers = new ObservableCollection<Preacher>();
        PopulatePreachers();
    }

    async void PopulatePreachers()
    {
        try
        {
            var list = await _repository.GetPreachersAsync();
            foreach (var preacher in list)
            {
                Preachers.Add(preacher);
                name = preacher.Name;
                email = preacher.Email;
            }
        }
        catch (Exception ex)
        {

           await Shell.Current.DisplayAlert("ERROR", ex.Message, "ok");
        }
        
    }

标签: xamarin.formsgoogle-cloud-firestore

解决方案


推荐阅读