2012-07-16 156 views
2

我想了解Sql SelectMany。我想在下面的查詢中使用它來查看如何使用SelectMany生成結果,而不是Select。我知道我可以在這裏使用選擇,而不是...我有一個表用戶與Id作爲int和位置作爲一個字符串。當我運行下面的查詢時,我得到了「System Operators不支持類型System.String」的異常。你能告訴我如何迭代由SelectMany返回的結果並將結果打印到控制檯。Linq to Sql SelectMany

UsersDataContext db = new UsersDataContext(); 

var results = db.Users.Where(u=> u.ID == 5 || u.ID == 6).SelectMany(u => u.Location); 

foreach (var c in results) 
{ 
    Console.WriteLine(c); 
} 

回答

2

您應該使用。在這裏選擇。

從MSDN上的SelectMany:

項目的序列中的每個元素到IEnumerable和變平 所得序列爲一個序列。

基本上SelectMany的工作就是將lambda指向一個集合,然後將它拉平成一個結果集。在你的例子中的位置不是一個集合