如何在linq中连接两列到sql query's select projection

本文关键字:query sql projection select 两列 linq 连接 | 更新日期: 2023-09-27 18:06:24

1-我使用linq to sql查询数据库表。
在我的实际表中,我将电话国家代码,电话号码和电话分机号存储在不同的列中。
3-当我得到的数据,我需要电话等于电话国家代码,电话号码和电话分机的串联。
4-对于某些记录,这3列中的任何一列都可能为空值。
5-如果其中一列为空,那么整个连接结果为空。

from s in test
select new{
          Phone = s.PhoneCountryCode + s.PhoneNumber + s.PhoneExtension
}

6-我尝试了以下,但没有工作。

from s in test
select new{
          Phone = s.PhoneCountryCode == null ? "" : s.PhoneCountryCode + s.PhoneNumber       == null ? "" : s.PhoneNumber + s.PhoneExtension == null ? "" : s.PhoneExtension
} 

如何在linq中连接两列到sql query's select projection

可以这样使用??运算符:

from s in test
select new
{
    Phone = (s.PhoneCountryCode ?? "") + (s.PhoneNumber ?? "") + (s.PhoneExtension ?? "")
}