2016-04-17 166 views
0

我想要的結果轉換LINQ聲明爲String []數組 像下面無法隱式轉換類型「System.Linq.IQueryable <char[]>」到「字符串[]」

string[] g = from p in db.np_user_security where 
p.user_id == user_id select p.group_id.Distinct().ToArray(); 

但給我錯誤如下

無法隱式轉換類型 'System.Linq.IQueryable' 到 '字符串[]'

查詢返回一個id列表,我需要將其保存在字符串數組中或long。我錯過了什麼?

+0

的可能的複製[轉換LINQ查詢到字符串數組 - C#](http://stackoverflow.com/questions/1378801/convert-linq-query-to-string-array-c-sharp) –

回答

2

通過執行p.group_id.Distinct().ToArray()您將每個group_id分成不同的字符數組。所以實際上,整個查詢返回的字符數組,而不是ids。

我相信你想先調用Distinct().ToArray()之前纏上括號查詢:

string[] g = (from p in db.np_user_security 
       where p.user_id == user_id 
       select p.group_id 
      ).Distinct().ToArray(); 
+0

thanks..its fine – Sachu

相關問題