猿问

从 c# 的 firebase 实时数据库中删除条目

我正在尝试从 c# 应用程序的 firebase 实时数据库中删除子条目。我无法在 firebase 文档中找到任何合适的方法。请帮忙。PS:我是firebase的新手


四季花海
浏览 152回答 2
2回答

慕运维8079593

遵循 DRY(不要重复自己)原则,每次看到被重用的代码时,您都可以而且应该重构它。至于你的代码,我要做的第一件事是创建一个函数来接收新的fireposition. 比如说:void ChangeFirePositionAndRecalculate (int newValue) {&nbsp; &nbsp; fireposition.z += newValue;&nbsp; &nbsp; temp = VoxelPlayEnvironment.instance.GetVoxel(fireposition);&nbsp; &nbsp; checkAirRadius(temp, fireposition);}而不是调用:fireposition.z -= 2;temp = VoxelPlayEnvironment.instance.GetVoxel(fireposition);checkAirRadius(temp, fireposition);您可以致电:ChangeFirePositionAndRecalculate (-2);ChangeFirePositionAndRecalculate (1);但是,话又说回来,干。例如,您可以创建一个包含所有这些位置的数组:public int [] positions;这甚至允许您fireposition直接从编辑器更改。考虑到这一点,您现在可以运行:for (int i = 0; i < position.lenght; i++) {&nbsp; &nbsp; ChangeFirePositionAndRecalculate (positions [i]);}你可以计算其余的。这只是我会做的一些事情。[编辑] 我忘了提到在创建方法时,使用 CamelCase,我注意到您的某些方法使用但checkAirRadius没有使用。

catspeake

RemoveValueAsync 怎么样?这里:DatabaseReference.RemoveValueAsync就像DatabaseReference rootReference = FirebaseDatabase.DefaultInstance.RootReference;DatabaseReference childToRemove = rootReference.Child("your child path");childToRemove.RemoveValueSync().ContinueWith(&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (task) =>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (task.IsCanceled || task.IsFaulted) Debug.Log("Fail");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; else if (task.IsCompleted) Debug.Log("Success");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; });
随时随地看视频慕课网APP
我要回答