我試圖使用循環遍歷數組,並在每次迭代中使用查詢where子句中的數組值執行LINQ查詢。循環LINQ查詢並將結果附加到DataTable
我則想要做的就是這些結果附加先後在一起,然後返回結果的DataTable。
如何將結果附加在一起?我嘗試了DataTable .Merge()方法,但收到一個錯誤(「無法隱式地將void類型轉換爲DataTable」),並且由於泛型類型範圍問題而無法解決查詢結果的附加問題。
編輯:代碼...(或版本中的至少一個到目前爲止我試過)
DataTable results = new DataTable();
foreach (string toFind in searchString)
{
DataTable toMerge = new DataTable();
var searchResults = from a in dt.AsEnumerable()
where a.Field<string>("A").ToUpper().Contains(toFind.ToUpper())
select new
{
A= a.Field<Int32>("A"),
B= a.Field<string>("B"),
C= a.Field<string>("C"),
};
toMerge = ConvertDataTable.FromLINQ(searchResults.AsQueryable()); // Method I have to convert the LINQ query to a DataTable
results = results.Merge(toMerge);
}
任何想法?
在此先感謝
克里斯
向我們展示一些代碼 – Stacker 2012-03-06 12:42:48
您可以使用列表而不是數據表嗎? – Gage 2012-03-06 13:39:29