我不知道如何在我的列表中查看if条件,我相信“Lambda Expressions”我的帮助但不知道
这是我的代码
List<ResourceBookingEntity> ResourceBookingList = new List<ResourceBookingEntity>();
foreach (var r in query)
{
ResourceBookingEntity RecourceEntity = new ResourceBookingEntity()
{
PRJ_ID = r.PRJ_ID,
WONUM = r.WONUM,
JOBDESC = r.JOBDESC,
SAPCCr = // If r.PRJ_ID =1 or 2 then SAPCCr =r.WONUM
// elseif r.PRJ_ID= 3then SAPCCr =r.JOBDESC
};
ResourceBookingList.Add(RecourceEntity);
在这里尝试做什么,我有linq查询返回基于r.PRJ.ID值的结果我试图填充SAPCCr值。
If r.PRJ_ID = 1 or 2 then
SAPCCr = r.WONUM
elseif r.PRJ_ID = 3
then
SAPCCr = r.JOBDESC
先谢谢
答案 0 :(得分:2)
我认为您正在寻找conditional operator:
SAPCCr = r.PRJ_ID == 1 ? r.WONUM :r.JOBDESC
答案 1 :(得分:1)
假设类型兼容,那么三元条件运算符有什么问题?
SAPCCr = ((r.PRJ_ID == 1) ? r.WONUM : r.JOBDESC );
答案 2 :(得分:1)
您可以链接条件运算符:
SAPCCr = (r.PRJ_ID == 1 || r.PRJ_ID == 2) ? r.WONUM :
r.PRJ_ID == 3 ? r.JOBDESC : null;