我正在嘗試根據(在本例中為“數量”)使用 lambda 對我的集合進行排序,但也嘗試了其他欄位。當我使用 foreach 輸出集合時,它不會根據欄位進行排序
Accounts? ac = await Client.SendRequest<Accounts>(tk.access_token, Method.GET, "/UploadedAccounts", "");
ac.value.OrderBy(x => x.Amount);
ac.value.RemoveAll(x => x.Year.ToString() != YearBox.Text);
foreach (var a in ac.value) {
ListViewBox.Items.Add(a.CompanyLegalName " / " a.Year "-" a.Month " / " a.AccountName " / " a.AccountCode " / " a.AccountType " / " a.Amount " / " a.Dimension , 0);
}
我也嘗試在“RemoveAll”之后進行排序,我做錯了什么?
uj5u.com熱心網友回復:
.OrderBy(x => x.Amount)對集合進行排序Accounts并回傳 sorted。你需要foreach在回傳的串列上做.OrderBy(x => x.Amount)
喜歡,
foreach (var a in ac.value.OrderBy(x => x.Amount))
{
ListViewBox.Items.Add(a.CompanyLegalName " / " a.Year "-" a.Month " / " a.AccountName " / " a.AccountCode " / " a.AccountType " / " a.Amount " / " a.Dimension , 0);
}
uj5u.com熱心網友回復:
問題是OrderByLINQ 擴展回傳已排序的可列舉。它不會修改原始集合。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/343509.html
