[英]How to use linq where clause to fill listview in xamarin.forms
我正在開發一個簡單的項目,我想搜索欄以填寫基於用戶輸入的列表視圖。 但這是顯示的錯誤代碼:
嚴重性代碼描述項目文件行抑制狀態錯誤CS7036:沒有給出對應於所需形式參數“Chiefdom”的參數
在我的sqlitehelper中這是我的任務查詢。
public Task<CommodityList> GetSearchComoditylistAsync(string Chiefdom)
{
return db.Table<CommodityList>().Where(i => i.Chiefdom == Chiefdom).FirstOrDefaultAsync();
}
在我的cs頁面中,這是我所擁有的:
async void SearchBar_Pressed(object sender, EventArgs e)
{
var comoList = await App.SQLiteDb.GetSearchComoditylistAsync();
if (comoList != null)
{
lvChiefCommodity.ItemsSource = comoList;
}
}
我想要的只是當用戶輸入或在搜索欄中輸入內容並點擊回車鍵時,它應根據輸入填充列表視圖。
GetSearchComoditylistAsync
有一個必需的參數, Chiefdom
public Task<CommodityList> GetSearchComoditylistAsync(string Chiefdom)
{
return db.Table<CommodityList>().Where(i => i.Chiefdom == Chiefdom).FirstOrDefaultAsync();
}
但是當你調用它時,你沒有傳遞任何參數
async void SearchBar_Pressed(object sender, EventArgs e)
{
var comoList = await App.SQLiteDb.GetSearchComoditylistAsync();
你可能想傳入搜索字符串
var search = (SearchBar)sender;
var comoList = await App.SQLiteDb.GetSearchComoditylistAsync(search.Text);
您當前的搜索功能僅返回一個結果。 如果你想要返回更多,
return db.Table<CommodityList>().Where(i => i.Chiefdom.ToUpper().Contains(Chiefdom.ToUpper()).ToListAsync();
public Task> GetItemsNotDoneAsync(string Chiefdom){return db.QueryAsync(“SELECT * FROM CommodityList WHERE Chiefdom =?”,Chiefdom); }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.