我有一個包含Supplier
數據的列表,我希望通過使用SupplierID
(非活動供應商並且只有1個最新結果)來搜索它。Lambda表達式用條件搜索並返回1個最新結果
所以我有:
List<Supplier> filteredList = this.toList();
filteredList.OrderByDescending(m => m.ModifiedDatetime).FirstOrDefault();
filteredList.Where(f => (f.Active == false && f.FieldId == SupplierFieldID))
.ToList<Supplier>();
但我不能做這項工作;請幫忙。
您可以將lambda傳遞給FirstOrDefault的調用,然後擺脫此處的Where。 'unfilteredData.OrderByDescending(m => m.ModifiedDatetime).FirstOrDefault(f => f.Active == false && f.FieldId == SupplierFieldID);' – 2013-02-26 02:17:03
@PrestonGuillot正確的,除了在這種情況下整個列表需要訂購。假設過濾顯着減少了條目的數量,出於性能原因可能需要單獨的「Where」。 – dasblinkenlight 2013-02-26 02:19:00
我會考慮過早的優化,個人,並希望有一個選擇器與過濾條件的可讀性,但我的評論是無論如何nit選擇。 – 2013-02-26 02:24:12