我想检索firestore集合的时间戳数据,但收到错误- {“解析值时遇到意外字符:{.路径'日期',
date field data screenshot
data screenshot
样本数据集
{"Tyres":"12","sr_no":"","TruckNumber":"TS 12345","image_url":"https://firebasestorage.googleapis.com/v0/b/truck-41c31.appsp.jpg?alt=media&token=2dc86208-7f71-4e3c-876c-70a80d4822bf","date":{}}
代码
Query truckQuery = fireStoreDb.Collection("users/QRRsqyWUas/orders");
QuerySnapshot truckQuerySnapshot = await truckQuery.GetSnapshotAsync();
List<Truck> lstTruck = new List<Truck>();
foreach (DocumentSnapshot documentSnapshot in truckQuerySnapshot.Documents)
{
if (documentSnapshot.Exists)
{
Dictionary<string, object> city = documentSnapshot.ToDictionary();
string json = JsonConvert.SerializeObject(city);
Truck newtruck = JsonConvert.DeserializeObject<Truck>(json);
newtruck.TruckNumber = documentSnapshot.Id;
newtruck.date = documentSnapshot.CreateTime.Value.ToDateTime();
lstTruck.Add(newtruck);
}
}
模型公共级卡车
{
[FirestoreProperty]
[Required]
public string TruckNumber { get; set; }
[FirestoreProperty]
[Required]
public string Tyres { get; set; }
public DateTime date { get; set; }
[FirestoreProperty]
[Required]
public string image_url { get; set; }
[FirestoreProperty]
[Required]
public string sr_no { get; set; }
}
firestore日期字段数据-29 June 2020 at 22:23:44 UTC+5:30
3条答案
按热度按时间x8diyxa71#
我现在已经在serializeObject(city)之前分配了datetime,我的错误消失了。
unhi4e5o2#
我在.netcore 5中遇到相同的错误与firebase数据库
解决方案:
属性变更:终止日期时间偏移
例如...“
**public DateTimeOffset date { get; set; }**
“并在数据库中插入日期,始终使用UTC
例如...
**object.date = DateTime.UtcNow;**
我希望这对每个人都有帮助。
e0uiprwp3#
我面对这个问题,我解决了它,我不知道这是否是一个解决方案,但我会在这里分享它
同时,利用该方法将返回的Dictionary转换为Observablecollection模型
物料_模型
这是我的解决方案