asp.net2.0揭祕讀書筆記四:GridView控制元件更新資料處理併發問題
GridView可以同時儲存每個資料列的原始值和修改後的新值,所以能夠處理併發衝突。
@ Page Language="C#" %>
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Concurrencytitle>
head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView
id="grdMovies"
DataSourceID="srcMovies"
DataKeyNames="Id"
AutoGenerateEditButton="true"
Runat="server" />
<asp:SqlDataSource
id="srcMovies"
ConflictDetection="CompareAllValues"
OldValuesParameterFormatString="original_{0}"
ConnectionString="$ ConnectionStrings:Movies %>"
SelectCommand="SELECT Id,Title,Director FROM Movies"
UpdateCommand="UPDATE Movies SET Title=@Title, Director=@Director
WHERE Id=@original_Id AND Title=@original_Title AND Director=@original_Director"
Runat="server" />
div>
form>
body>
html>
在上面的程式碼清單中,SqlDataSource控制元件的ConflicatDetection屬性和OldValuesParameterFormatString屬性都被賦值,這兩個屬性會使SqlDataSource控制元件為每一個資料列保持此列的原始值和修改後的值。
ConflicatDetection屬性可以為以下兩個值之一:
CompareAllValues
OverwriteChanges
ConflicatDetection的預設值是OverwriteChanges,這個會導致SqlDataSource控制元件直接使用新值覆蓋到資料列中。如果設為CompareAllValues,SqlDataSource控制元件會為每一列保持原始值和修改後的值。
OldValuesParameterFormatString屬性用來為列的原始值提供唯一的名稱,例如,SqlDataSource控制元件的UpdateCommand屬性值如下所示:
UpdateCommand="UPDATE Movies SET Title=@Title, Director=@Director
WHERE Id=@original_Id AND Title=@original_Title AND Director=@original_Director"
@original_Id,@original_Title,@original_Director參數列示這些列的原始值,如果誰先修改了這些記錄,這本次修改則被忽略。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-594856/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- asp.net2.0揭祕讀書筆記三:使用主題設計網站ASP.NET筆記網站
- 《CSS揭祕》讀書筆記CSS筆記
- 《SIP揭祕》讀書筆記筆記
- ASP.NET2.0揭祕讀書筆記六——使用會話狀態SessionASP.NET筆記會話Session
- 《揭祕跨境電商》讀書筆記筆記
- 維度處理-資料倉儲-讀書筆記(四)筆記
- ASP.NET2.0揭祕讀書筆記之八——頁面輸出快取ASP.NET筆記快取
- 《Python資料處理》讀書筆記Python筆記
- ASP.NET2.0揭祕讀書筆記五——維護應用程式狀態之cookieASP.NET筆記Cookie
- asp.net 2.0揭祕讀書筆記二:使用Rich控制元件ASP.NET筆記控制元件
- Java 併發程式設計實踐 讀書筆記四Java程式設計筆記
- ES 筆記三十七:處理併發讀寫操作筆記
- 併發問題處理方式
- 使用資料庫處理併發可能導致的問題資料庫
- SpringMVC 學習筆記(四) 處理模型資料SpringMVC筆記模型
- CSAPP 併發程式設計讀書筆記APP程式設計筆記
- asp.net 2.0揭祕讀書筆記一:ASP.NET和.NET FrameworkASP.NET筆記Framework
- 《CSS揭祕》筆記(一)CSS筆記
- Windows核心讀書筆記——Windows異常分發處理機制Windows筆記
- 達夢資料庫日常管理之問題處理筆記1資料庫筆記
- 海量資料的併發處理
- Java程式設計思想讀書筆記一:併發Java程式設計筆記
- Effective Java讀書筆記一:併發(66-73)Java筆記
- 資料庫索引設計與優化讀書筆記--《三》SQL處理過程資料庫索引優化筆記SQL
- 併發處理中的問題以及解決這些問題的併發模型模型
- ASP.NET 2.0揭祕讀書筆記七——使用使用者配置檔案ProfileASP.NET筆記
- 資料採集,微軟控制元件分頁問題的處理微軟控制元件
- 《Python 簡明教程》讀書筆記系列四 —— 資料結構Python筆記資料結構
- 《網際網路信貸風險與大資料》讀書筆記(四)大資料筆記
- 資料處理--pandas問題
- mysql大資料高併發處理MySql大資料
- 再談資料的併發處理
- 讀書筆記*雲端計算和大資料時代網路技術揭祕-第一部分筆記大資料
- 機器學習筆記---資料預處理機器學習筆記
- 資料庫併發問題資料庫
- 資料併發問題收藏
- 小程式讀書筆記(1)常見問題筆記
- 【讀書筆記】Java併發程式設計的藝術筆記Java程式設計