我对 LINQ 很陌生。我有一个下面的 linq 查询
var entities = context.MessagingTemplateEntities
.Where(m =>
m.PartyId == partyId &&
m.MessageTemplateTypeId == messagingTemplateTypeId &&
m.ProductTypePartyId == productTypePartyId);
在此查询中,如果 productTypePartyId 为 0,那么我不想将其包含在 && 条件中。那么如何根据值排除参数呢?
最佳答案
不知道为什么人们总是强制 LINQ 成为一个衬垫。
var entities = context.MessagingTemplateEntities
.Where(m =>
m.PartyId == partyId &&
m.MessageTemplateTypeId == messagingTemplateTypeId);
if(productTypePartyId != 0)
entities = entites.Where(m.ProductTypePartyId == productTypePartyId);
自己决定哪个一目了然更具可读性。
关于asp.net - LINQ - WHERE 子句中的 CASE 语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8356300/