假設我有一列稱爲A,我要檢查是否爲空或空白,什麼是檢查這個使用數據視圖的RowFilter,它的正確方法:我如何檢查空白DataView.RowFilter
DataTable dt = GetData();
DataView dv = new DataView(dt);
dv.RowFilter = "A IS NOT NULL OR A IS NOT ''";
雖然上面似乎沒有工作。
假設我有一列稱爲A,我要檢查是否爲空或空白,什麼是檢查這個使用數據視圖的RowFilter,它的正確方法:我如何檢查空白DataView.RowFilter
DataTable dt = GetData();
DataView dv = new DataView(dt);
dv.RowFilter = "A IS NOT NULL OR A IS NOT ''";
雖然上面似乎沒有工作。
是否與.net < 3.5綁定?如果沒有,你可以使用linq來檢查列的狀態。
否則有一個Isnull(,)
功能就像在T-SQL:
dv.RowFilter = "Isnull(a,'') <> ''";
我假設你需要檢索的所有記錄,其中在A列中的值既不是空也不是'
的正確expr是:
dv.RowFilter = "A IS NOT NULL AND A <> ''";
,並檢索上dv.ToTable()這樣篩選的記錄循環:
foreach (DataRow dr in dv.ToTable().Rows)
Console.WriteLine(dr["A"]);
這應該工作......歡呼聲!
您可以添加
dv.RowFilter = "CONVERT(Isnull(a,''), System.String) <> ''"
如果列作爲ISNULL數的數據類型(「」)將返回數。對號碼<> 0進行評估會拋出異常。
+1您的回答幫助我解決了異常情況。 – 2012-09-29 06:06:48