我有一个List
产品,我需要从列表中获取带有从querystring参数中获取的特定产品Id
的商品。但是,我可能并不总是将产品Id
传递给我。如果我没有产品Id
,则需要默认使用列表中的第一个产品。
目前,我有:
@Model.Products.FirstOrDefault(x => x.Id == productId);
这只会选择具有该特定
Id
的产品,如果没有,则默认为null
。有没有办法实现我想要的?
最佳答案
听起来像您想要的:
var product = productId == null ? Model.Products.FirstOrDefault()
: Model.Products.FirstOrDefault(x => x.Id == productId);
...
@product
或者你可能的意思是:
@(Model.Products.FirstOrDefault(x => x.Id == productId) ??
Model.Products.FirstOrDefault())
关于c# - 如果FirstOrDefault返回null,则返回列表中的第一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9429341/