C# 将Linq中的NULL和字符串连接到实体查询

C# 将Linq中的NULL和字符串连接到实体查询,c#,linq-to-entities,C#,Linq To Entities,此查询实际上可以工作,但会返回ClientName设置为null的新对象,其中FirstName或Lastname为null(这两个值中的任意一个)。我怎样才能避开这个问题?我希望这些行中有一个空字符串,而不是null var clients = from client in _repository.GetAll() where (client.Firstname.StartsWith(query) || clien

此查询实际上可以工作,但会返回ClientName设置为null的新对象,其中FirstName或Lastname为null(这两个值中的任意一个)。我怎样才能避开这个问题?我希望这些行中有一个空字符串,而不是null

var clients =
                    from client in _repository.GetAll()
                    where (client.Firstname.StartsWith(query) || client.Lastname.StartsWith(query))
                    select new
                            {
                                ClientName = (client.Firstname + " " + client.Lastname).Trim(),
                                client.Firstname,
                                client.Lastname,
                                client.Address1,
                                client.Address2,
                                client.client_id,
                                client.PrettyId,
                                client.PostCode.postalcode,
                                client.PostCode.postname
                            };

这就是为什么在数据库中将字符串字段设置为可空是毫无意义的。将FirstName和SecondName设置为NOTNULL并忘记这些问题。这就是为什么在数据库中将字符串字段设置为可空字段没有意义的原因。将FirstName和SecondName设置为NOTNULL,并忘记这些问题。
((client.Firstname ?? "") + " " + (client.Lastname ?? "")).Trim();