iT邦幫忙

DAY 12
1

我的.Net之路系列 第 12

DataRow的二三事

  • 分享至 

  • xImage
  •  

關於RowState與DataRowVersion
DataRow是個滿有趣的東西,你可能常常使用它,但應該很少單獨使用它,因為多半它都會依附在某個DataTable上。
我覺得DataRow中兩個最有趣的是RowState屬性和DataRowVersion 列舉型別。
DataRow.RowState屬性會傳回一個DataRowState 列舉型別的值,說明如下:(引述自MSDN文件庫 http://msdn.microsoft.com/zh-tw/library/system.data.datarowstate.aspx)
Detached 已經建立資料列,但不是任何 DataRowCollection 的一部分。DataRow 在已經建立後、加入至集合前,或如果已經從集合移除後,會立即處在這個狀態中。
Unchanged 自從上次呼叫 AcceptChanges 之後,資料列尚未變更。
Added 資料列已經加入至 DataRowCollection,並且尚未呼叫 AcceptChanges。
Deleted 使用 DataRow 的 Delete 方法來刪除資料列。
Modified 已經修改資料列,並且尚未呼叫 AcceptChanges。
這個用途在於我們可以得知DataTable各Row的狀態,來決定是否要相對於其存在於資料庫中的資料做變更。
DataRowVersion 列舉型別則可以讓我們取得各Row中個某個Item(也就是某個欄位)的資料狀態,使用方法則是用DataRoe.Item屬性的其中三個多載
DataRow.Item 屬性 (DataColumn, DataRowVersion)
DataRow.Item 屬性 (Int32, DataRowVersion)
DataRow.Item 屬性 (String, DataRowVersion)
而這個列舉型別個值的意義則是(引述自MSDN文件庫 http://msdn.microsoft.com/zh-tw/library/system.data.datarowversion.aspx)
Original 資料列含有原始值。
Current 資料列含有目前的值。
Proposed 資料列含有建議值。
Default DataRowState 的預設版本。如果 DataRowState 的值為 Added、Modified 或 Current,其預設版本是 Deleted。如果 DataRowState 的值是 Detached,版本是 Proposed。


上一篇
背景執行緒
下一篇
睡一睡的重要性
系列文
我的.Net之路31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言