我有以下linq声明,它很好用,当列表中的每个gameServer
都有一个connectedClients
的集合。如果其中一个属性为NULL,则此LINQ语句崩溃。我怎样才能解决这个问题?
但是当connectedClient
是null
时,查询崩溃。
我该如何防止这种崩溃?
var connectedClients = (from x in gameServers
from y in x.ConnectedClients
select new
{
x.Name,
x.GameType,
ConnectedClients = new
{
y.ClientName,
y.ConnectedOn,
y.ClientIpAddressAndPort
}
}).ToList();
和..
public class GameServer
{
public int Id;
public ICollection<Client> ConnectedClients;
...
}
'where y!= null'?这似乎太容易了,我一定错误地理解了你的问题。 – jv42
我没有看到一个名为'connectedClient'的变量。我错过了什么吗? – Polynomial
就个人而言,我会改变你的代码,当没有连接的客户端时,'ConnectedClients'是**空**而不是'null'(见例如[this](http://stackoverflow.com/questions/1969993/is-它更好地返回null或空集合))。 – AakashM