lambda内部的字符串条件
本文关键字:条件 字符串 内部 lambda | 更新日期: 2023-09-27 18:29:11
我有下面的LINQ表达式,需要在其中连接字符串,但是,如果后面的字符串中有值,我只想显示连字符。例如,如果只有一个Wing和一个Floor,我应该只显示East-3。我试着插入一些绳子。表达式中的IsNullOrEmpty(),但编译器在Select关键字处抱怨。。。
param.Patient.PatientGroups.Select(g => g.Wing + "-" + g.Floor + "-" + g.Room + "-" + g.Bed + "-" + g.Table).FirstOrDefault()
您可以使用string.Join
,但必须首先将字段转换为数组:
param.Patient.PatientGroups
.Select( g => String.Join( "-"
, (new string[] { g.Wing, g.Floor, g.Room, g.Bed, g.Table })
.Where(x => !string.IsNullOrEmpty(x))
)
).FirstOrDefault()