我有這樣的代碼: -如何設置動態凡在LINQ查詢條款與C#
DataSet ds = new DataSet();
String s = "StudentID = 5 Or StudentID=6";
var result = from r in ds.table[0].AsEnumerable() where s.ToString() select r;
如何從這個獲取數據?
我有這樣的代碼: -如何設置動態凡在LINQ查詢條款與C#
DataSet ds = new DataSet();
String s = "StudentID = 5 Or StudentID=6";
var result = from r in ds.table[0].AsEnumerable() where s.ToString() select r;
如何從這個獲取數據?
試試這個
var result = ds.Tables[0].AsEnumerable().Where(row => row["StudentID"].ToString() == "5" || row["StudentID"].ToString() == "6")
或
var result = from r in dx.AsEnumerable()
where r["StudentID"].ToString() == "5" || r["StudentID"].ToString() == "6"
select r;
你可以試試這個
DataTable dt = result.CopyToDataTable(); //for both code above
謝謝大家但是我想將我自己選擇的查詢發送給Linq,他會將表格數據返回給我。 ??? –
@ anuj.rohila94查看我的更新 – codingbiz
爲什麼你不能使用的ID列表?
//assuming you have text and that's the reason
var txtIDs = "5,6";
var IDs = txtIDs.Split(',').Select(s => int.Parse(s));
var rows = from r in ds.Tables[0].AsEnumerable()
where IDs.Any(id => r.Field<int>("ID")==id)
select r;
或方法的語法:
var rows = ds.Tables[0].AsEnumerable()
.Where(r => IDs.Contains(r.Field<int>("ID")));
如果您需要LINQ而這僅僅是一個例子,那麼你應該使用動態LINQ。 –
通常情況下,您可以使用許多小靜態子句的組合來完成此任務。爲什麼你需要使用動態where子句? – Enigmativity