我想在我的MainPage.xaml文件中为我的项目添加一个搜索函数。一切都很顺利,没有任何错误,直到我添加了SearchRasepiRecord()方法,该方法根据搜索词查询Firebase数据库。
MainPage.xaml.cs:
private async void SearchBar_TextChanged(object sender, TextChangedEventArgs e)
{
var searchTerm = e.NewTextValue;
var records = await firebaseHelper.SearchRasepiRecord(searchTerm);
displayRecord.ItemsSource = records;
}
FirebaseHelper.cs:
public async Task<List<RasepiRecord>> SearchRasepiRecord(string searchTerm)
{
var result = await firebase
.Child("RasepiRecords")
.OrderByChild("Food")
.StartAt(searchTerm.ToLower())
.EndAt(searchTerm.ToLower() + "\uf8ff")
.OnceAsync<RasepiRecord>();
return result.Select(item => new RasepiRecord
{
Name = item.Object.Name,
Food = item.Object.Food,
Ingredients = item.Object.Ingredients,
Instructions = item.Object.Instructions,
Meal = item.Object.Meal,
Socmed = item.Object.Socmed,
}).ToList();
}
我得到了同样的错误,那就是:
错误CS1061“ChildQuery”不包含“OrderByChild”的定义,找不到接受第一个“ChildQuery”类型参数的可访问扩展方法“OrderByChild”(是否缺少using指令或程序集引用?)
我尝试了下面的调整,但仍然得到了同样的错误。
1.使用正确的指令
using Firebase.Database;
using Firebase.Database.Query;
1.已安装最新版本的Firebase Realtime Database .NET SDK
1.尝试卸载它然后再次安装它
1.还尝试清理和重建我的项目
- 我正在使用VS2019 btw,它是否会影响任何...
1条答案
按热度按时间epfja78i1#
通过查看
step-up-labs/firebase-database-dotnet
repo中的代码,似乎这个方法可能会被称为OrderBy
而不是OrderByChild
。所以给予一下:进一步查看代码,它需要一个
Func<String>
,因此它可能需要类似于: