[英]Specifying item list contents in Entity Framework with two conditions
[英]Find an item in a generic list by specifying multiple conditions
通常我們會找到包含以下代碼的通用列表:
CartItem Item = Items.Find(c => c.ProductID == ProductID);
Item.Quantity = Quantity;
Item.Price = Price;
所以上面的代碼找到並更新了其他數據,但如果我想通過多個條件找到,那么我該如何編寫代碼呢?
我想寫代碼如下:
CartItem Item = Items.Find(c => c.ProductID == ProductID and c.ProductName == "ABS001");
當我們找到通用列表時,請引導我了解多種情況。
試試這個:
CartItem Item = Items.Find(c => (c.ProductID == ProductID) && (c.ProductName == "ABS001"));
試試這個:
Items.Find(c => c.ProductID == ProductID && c.ProductName == "ABS001");
lambda表達式的主體只是一種方法。 您可以在其中使用所有語言結構,如常規方法。
就個人而言,我更喜歡
Items.Find(item => item.ProductId == ProductID && item.ProductName.Equals("ABS001"));
使用&&而不是和
var result = Items.Find(item => item.ProductId == ProductID && item.ProductName == "ABS001");
當有人使用大寫的第一個char命名變量時,它會讓我感到惱火,所以(productID而不是ProductID):
CartItem Item = Items.Find(c => (c.ProductID == productID) && (c.ProductName == "ABS001"));
:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.