sql查询中经常会用到case when 的语句,如何在linq to sql中实现,方法
var query = from a in db.crm_comment
join b in db.crm_user on a.shr equals b.account
where
(
from c in db.crm_detail
where c.customerid == id
select c.doc_id
).Contains(a.doc_id)
select new
{
doc_id = a.doc_id,
detail = a.detail,
status = a.status,
shr = a.shr,
shdate = a.shdate,
name = b.name,
kinds = a.doc_id.Substring(0, 2)=="KH"?"客户报备":
a.doc_id.Substring(0, 2)=="PR"?"项目报备":
a.doc_id.Substring(0, 2)=="KA"?"客户续报":
a.doc_id.Substring(0, 2)=="KB"?"转老客户":
a.doc_id.Substring(0, 2)=="KC"?"客户变更":""
};