我有以下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