如何访问对象数据 c# (Firebase)
How to access object data c# (Firebase)
我从我的数据库(Firebase 数据库)获取数据。这是一个包含多个数据的文档,包括一个带有 GeoPoint 字段的数组。
var documents = await CrossCloudFirestore.Current .Instance .Collection("Activity") .GetAsync();
我的对象在我的模型中是这样定义的 class:public class Activity { public object elapsedTime { get; set; } public object positions { get; set; } ...... }
有效。我可以在 Activity class 上获取数据。
但是,我想知道如何访问这些数据,因为 foreach 循环不适用于对象类型。也许我需要重新定义 Activity Class ?
谢谢 :=)
编辑:
你可以在这里看到我的火力基地:
然后是请求的结果:
在您的方案中,属性 对于每个对象都是动态的,我建议您将根级别反序列化为 dictionary
,然后获取您想要的数据。
Items = JsonConvert.DeserializeObject<Dictionary<string, YourClass>>(content).Values.ToList()
哦,在此之前,需要Newtonsoft插件。
参考
有效! :)
为此,我在我的 C# class 上将数组(来自 firestore)定义为 IEnumerable,从 firestore 到 c# 具有相同的名称。
然后,这是我的查询和转换对象的行。
我从我的数据库(Firebase 数据库)获取数据。这是一个包含多个数据的文档,包括一个带有 GeoPoint 字段的数组。
var documents = await CrossCloudFirestore.Current .Instance .Collection("Activity") .GetAsync();
我的对象在我的模型中是这样定义的 class:public class Activity { public object elapsedTime { get; set; } public object positions { get; set; } ...... }
有效。我可以在 Activity class 上获取数据。 但是,我想知道如何访问这些数据,因为 foreach 循环不适用于对象类型。也许我需要重新定义 Activity Class ? 谢谢 :=)
编辑:
你可以在这里看到我的火力基地:
然后是请求的结果:
在您的方案中,属性 对于每个对象都是动态的,我建议您将根级别反序列化为 dictionary
,然后获取您想要的数据。
Items = JsonConvert.DeserializeObject<Dictionary<string, YourClass>>(content).Values.ToList()
哦,在此之前,需要Newtonsoft插件。
参考
有效! :)
为此,我在我的 C# class 上将数组(来自 firestore)定义为 IEnumerable,从 firestore 到 c# 具有相同的名称。
然后,这是我的查询和转换对象的行。