You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在C#中如何从Firebase数据库获取NodeId?含代码场景问询

在C#中从Firebase Realtime Database获取NodeId的方法

嘿,这事儿其实挺简单的!你现有的代码已经拿到了包含节点数据的集合,只需要访问每个结果对象的Key属性就能得到你要的NodeId啦。

原理说明

firebaseClient.Child("Node").OnceAsync<RelatedModel>()返回的是一个IEnumerable<FirebaseObject<RelatedModel>>类型的集合,每个FirebaseObject<T>实例里的Key字段,就是Firebase数据库中对应节点的唯一ID(也就是你图里的NodeId)。

修改后的代码示例

你可以遍历结果集合,逐个获取每个节点的ID:

FirebaseClient firebaseClient = new FirebaseClient("Your FireBase Database URL");
var result = await firebaseClient.Child("Node").OnceAsync<RelatedModel>();

// 遍历所有节点,获取每个节点的NodeId和对应数据
foreach (var item in result)
{
    string nodeId = item.Key; // 这就是你要的NodeId
    RelatedModel data = item.Object; // 对应的节点数据
    // 这里可以添加你的业务逻辑,比如打印或者存储NodeId
    Console.WriteLine($"NodeId: {nodeId}, Data: {JsonSerializer.Serialize(data)}");
}

如果只需要获取单个节点的ID(比如第一个节点),可以直接这样写:

if (result.Any())
{
    string firstNodeId = result.First().Key;
    Console.WriteLine($"第一个节点的ID:{firstNodeId}");
}

小提示

  • 确保你已经正确安装了Firebase的NuGet包(通常是Firebase.Database)
  • Key属性是只读的,它直接映射Firebase数据库中节点的键值,不需要额外的配置

内容的提问来源于stack exchange,提问作者Parth Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 09:12:20