2010-05-03 115 views
3

我有一個DataTable,我想找出所有修改後的數據行的原始列值。如何從DataRow獲取原始DataColumn值?

我使用下面的方法來獲取原單列值的DataRow中修改

DataRow[] dataRowArray = dataTableInstance.Select(null,null,DataViewRowState.OriginalRows); 
DataRow originalDataRow = dataRowArray[rowIndex][columnIndex, DataRowVersion.Original] 

之前,請指出我究竟錯在這裏做什麼?上面的代碼不會給我原始列,而是它給了我最新的修改列值。

謝謝。當你調用AcceptChanges
尼基爾

+0

我有同樣的問題,從來沒有調用AcceptChanges,但仍然原始包含修改後的值,而不是原來的。你有沒有找到解決方案? – GuidoG 2016-12-08 11:02:44

回答

2

原始值都將丟失(當你在DataAdapterTableAdapter致電Update過這通常稱爲)。一旦更改被接受,您將無法訪問原始值,這可能是您的代碼無法工作的原因。

+0

我沒有明確地調用我的數據表上的任何更新。我實際上正在使用我的數據表分配給的第三方網格控件。可能是網格對底層數據源做了一些處理! – 2010-05-03 15:07:30

0
DataRow row = undefinedrow; 
row["Column"].ToString(); 

這將返回轉換爲已設置列的字符串的值。