首页 > 解决方案 > 如何从 Firebase 数据库中检索数据?

问题描述

我是 Firebase 数据库的新手。我需要从具有以下结构的数据库中检索数据。
数据库中的数据

我使用以下代码成功检索了数据

var Result = await FirebaseConnection.firebaseClient.Child("SalesMaster").OrderBy("Status").EqualTo(false).OnceAsync<SalesData>();

但在这里它在这里不起作用。返回错误:

无法将当前 JSON 对象(例如 {"name":"value"})反序列化为类型“System.Collections.Generic.List`1[AppliancesServer.Models.SalesDetail]”,因为该类型需要 JSON 数组(例如 [1, 2,3]) 正确反序列化。要修复此错误,请将 JSON 更改为 JSON 数组(例如 [1,2,3])或更改反序列化类型,使其成为普通的 .NET 类型(例如,不是像整数这样的原始类型,而不是像这样的集合类型可以从 JSON 对象反序列化的数组或列表。JsonObjectAttribute 也可以添加到类型中以强制它从 JSON 对象反序列化。路径“-M3ltQ-sbTkE6bqjbp0k.SalesDetails.-M3ltQPLdUjhiEqutD3s”,第 1 行,位置 177。

使用模型类作为

public class SalesData
{

    public string CustomerId { get; set; }
    public string Mob { get; set; }
    public string CustomerName { get; set; }
    public string SalesNo { get; set; }
    public DateTime SalesDate { get; set; }
    public decimal Total { get; set; }
    public bool? Status { get; set; }
    public List<SalesDetail> SalesDetails { get; set; }

}

public class SalesDetail
{
    public string key { get; set; }
    public string SalesId { get; set; }
    public string ProductId { get; set; }
    public string ProducName { get; set; }
    public int Qty { get; set; }
    public string Status { get; set; }
    public decimal Amount { get; set;        
    public decimal Total { get; set; }
}

感谢您的帮助,并在此先感谢您。

标签: c#jsonfirebase

解决方案


推荐阅读