xamarin.forms - 从 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");
}
}
解决方案
推荐阅读
- javascript - Javascript - 当页面中没有元素具有焦点时,keydown 上的焦点元素
- javascript - 难以将正则表达式与过滤方法匹配
- jquery - 将选定选项从多个选择标签推送到数组中
- python - 如何使用 Python 将每个月的常数乘以原始时间序列
- python - 如何将此函数映射到 pyspark
- vue.js - Vue - 将道具传递给计算
- java - Spring Boot 2 静态资源子文件夹
- visual-studio-code - 可以在 Emmet 自动完成上更改类标签名称吗?
- r - ggplot2热图没有从高到低排列值
- gnuplot - brew install gnuplot --with-qt --with-x11 不工作