连接字符串时处理LINQ中的空列
本文关键字:LINQ 字符串 处理 连接 | 更新日期: 2023-09-27 18:00:14
我正在尝试获取应用程序中的人员详细信息,其中中间名有时会丢失。我正在尝试这样:
contactTable.Select(c => c.Title + " " + c.FirstName).ToList();
但每当DB中的title列保持为null时,它就会为该条目返回空。我想要一些类似的:
contactTable.Select(c => (string.IsNullOrEmpty(c.Title) ? "" : c.Title + " ") + c.FirstName).ToList();
这在一个linq语句中可能吗?提前谢谢。
这是可能的,完整的答案包括可以为null的MiddleName:
contactDetails = contactTable.Select(c =>
((c.Title ?? "") + " " + c.FirstName).Trim() + " " + ((c.MiddleName ?? "") + " " + c.LastName).Trim()).ToList();
参见Trim()
的双重使用。
利用:??操作员
试试下面的代码
contactTable.Select(c => ( (( c.Title ?? "") + " " + c.FirstName).Trim()).ToList();