回答
正如SLaks提到的那樣,您將需要遍歷每行中的行和項目。你可以這樣使用LINQ做到這一點:
bool hasNull = view.Table.Rows.OfType<DataRow>()
.Any(r => r.ItemArray.Any(o => o == DBNull.Value));
或者你可以寫在循環自己,是這樣的:雖然LINQ的版本是一個很大的緊湊
private bool HasEmptyItem(DataView view)
{
foreach (DataRow row in view.Table.Rows)
{
foreach (DataColumn col in view.Table.Columns)
{
if (row[col] == DBNull.Value)
return true;
}
}
return false;
}
,它仍然在持續循環行和列,所以請選擇。
更新: 根據意見,以下是根據你想做什麼更好的樣品。這只是循環遍歷行,並檢查給列是否爲空(確保使用DBNull.Value
與DataTable
),如果是這樣,只需將其設置爲false以防止出現問題。只要將IS_DEFAULT_COL
更改爲正確的索引即可。
const int IS_DEFAULT_COL = 1;
foreach (DataRow row in view.Table.Rows)
{
if (row[IS_DEFAULT_COL] == DBNull.Value)
row[IS_DEFAULT_COL] = false;
}
非常感謝wsanville! 我正在考慮這個常規循環,但是您的LinQ解決方案似乎更加有趣和緊湊:) 您能否告訴我您對我的初始問題以及我在上面最後一條評論中解釋過的問題的看法?因爲也許我可以直接在綁定過程中解決這個問題,而不是試圖測試數據視圖。 – benj007 2010-06-06 12:42:53
謝謝, 我記得我嘗試了一些在我的綁定的東西說「如果它是空的,然後用false綁定」,有一個選項,當你做checkbox.databindings.add(........)我想想,但這似乎沒有工作,我仍然有一個錯誤。 – benj007 2010-06-06 13:17:28
不要調用'ItemArray';它不必要地分配一個數組。 – SLaks 2010-06-06 13:42:50
- 1. jquery:檢查是否至少有一個.element包含至少一個.element2
- 2. 檢查列表是否包含至少一個非空對象
- 3. 如何檢查數組是否至少包含一個對象?
- 4. javascript - 如何檢查數組是否至少有一個負值?
- 5. 檢查字典中是否至少包含一個字典
- 6. 檢查一個集合是否至少包含一個文檔
- 7. 檢查元組是否包含多個值中的至少一個
- 8. 檢查MySQL中的查詢是否至少有2行
- 9. 檢查表的每一行中有多少列包含值
- 10. 檢查列表是否包含至少一個非零元素
- 11. R檢查至少有20%的矢量是否有特定值
- 12. 檢查一個數據幀行的至少一個值是否大於給定的行特有的閾值
- 13. 檢查是否至少有一個數組值在另一個數組中PHP
- 14. 有沒有一種快速檢查Python中列表中是否至少有一個整數的方法?
- 15. 如何檢查一組行中是否有至少一個特定值
- 16. 有沒有一種有效的方法來檢查HashMap是否包含映射到相同值的鍵?
- 17. 最好/最有效的方法來檢查是否至少有一個輸入是由用戶輸入
- 18. 檢查是否至少有一行被填充
- 19. 檢查arraytype列是否包含空值
- 20. 檢查arraylist是否只包含空值
- 21. 檢查一組電臺是否至少有一個選中
- 22. 檢查列包含有效的值
- 23. 如何檢查一個字符串是否至少包含2位數字並且沒有空格?
- 24. 另一種檢查圖像url的方法是否有效
- 25. 檢查兩個輸入字段中的至少一個是否有數據
- 26. 檢查是否至少有一個孩子有XSLT 1.0
- 27. 檢測NumPy數組是否至少包含一個非數字值?
- 28. 檢查是否有空值
- 29. 檢查數組中是否有至少一個輸入值使用jQuery/Javascript
- 30. 如何檢查字符串在Objective-C中是否包含有效的數值?
最好的辦法是在數據庫中執行檢查......並讓它執行它擅長的功能。 – 2010-06-06 12:20:00
@Mitch:我們不知道DataView來自哪裏。 – SLaks 2010-06-06 12:21:43
基本上我有一些複選框綁定到這個DataView和我有一個「isDefault」列(布爾)來說,如果每個複選框必須被檢查或沒有關於它的isDefault值。我的問題是,如果DataView的值爲Null,我想自動將複選框的值設置爲false,否則如果嘗試將Null綁定到複選框,我會得到一個錯誤。 – benj007 2010-06-06 12:37:14