只需選擇您希望從最小的財產:
var minimumPrice = lstBtn
.Where(p => p.CategoryID == btnObj.CategoryID && p.IsSelected && p.IsPriceApplied)
.Min(p => p.Price);
如果你真的想找到你需要訂購的收集價格最低的項目:
var itemWithMinimumPrice = lstBtn
.OrderBy(p => p.Price)
.FirstOrDefault(p => p.CategoryID == btnObj.CategoryID && p.IsSelected && p.IsPriceApplied);
或這個,可以更高效:
var itemWithMinimumPrice = lstBtn
.Where(p => p.CategoryID == btnObj.CategoryID && p.IsSelected && p.IsPriceApplied)
.OrderBy(p => p.Price)
.FirstOrDefault();
Enumerable.FirstOrDefault
返回一個項目或null
如果沒有項目與謂詞匹配。
爲什麼要使用Linq?只需簡單地這樣做:myList.Sort();然後選擇列表中的第一個元素 – Tinwor
@Tinwor:因爲他的要求是獲得最低價格,而不是對原始集合進行排序。除此之外,'lstBtn.Sort'不會自動按「Price」排序。 –