本文件已封存並已停止維護。

SqlDataSourceView.ExecuteUpdate 方法

注意:這個方法是 .NET Framework 2.0 版的新功能。

使用 UpdateCommand SQL 字串、UpdateParameters 集合中指定的任何參數,以及 keysvaluesoldValues 集合中指定的值,執行更新作業。

命名空間: System.Web.UI.WebControls
組件: System.Web (在 system.web.dll 中)

protected override int ExecuteUpdate (
	IDictionary keys,
	IDictionary values,
	IDictionary oldValues
)
protected int ExecuteUpdate (
	IDictionary keys, 
	IDictionary values, 
	IDictionary oldValues
)
protected override function ExecuteUpdate (
	keys : IDictionary, 
	values : IDictionary, 
	oldValues : IDictionary
) : int

參數

keys

主索引鍵的 IDictionary,與 UpdateCommand 屬性搭配使用,以執行更新資料庫作業。如果沒有任何索引鍵與查詢關聯,或 UpdateCommand 屬性不是參數型的 SQL 查詢,則會傳遞 Null 參照 (即 Visual Basic 中的 Nothing)。

values

值的 IDictionary,與 UpdateCommand 屬性搭配使用,以執行更新資料庫作業。如果沒有任何參數與查詢有關聯,或是 UpdateCommand 不是參數型的 SQL 查詢,則會傳遞 Null 參照 (即 Visual Basic 中的 Nothing)。

oldValues

IDictionary,表示資料庫中的原始值。如果沒有任何參數與查詢關聯,或 UpdateCommand 屬性不是參數型的 SQL 查詢,則會傳遞 Null 參照 (即 Visual Basic 中的 Nothing)。

傳回值

表示基礎資料庫中更新之資料列數的值。

例外狀況類型條件

InvalidOperationException

SqlDataSource 不能以基礎資料來源建立連接。

-或-

ConflictDetection 屬性設為 CompareAllValues 值,且不傳遞任何 oldValues 參數。

HttpException

目前的使用者不具有取得資料庫存取權的正確使用權限。

NotSupportedException

CanUpdate 屬性為 false

SqlDataSourceView 類別會實作繼承的 ExecuteUpdate 方法,以更新資料庫中的資料。網頁開發人員和資料繫結控制項作者不會直接呼叫 ExecuteUpdate 方法,而是使用公開的 Update 方法。

keysvalues 集合中包含的值會與 UpdateParameters 集合中包含的任何值一起評估並合併。如果 ConflictDetection 屬性設為 CompareAllValues,則 oldValues 集合中包含的值會使用 OldValuesParameterFormatString 進行格式化,並加以合併。

執行更新作業之前,會呼叫 OnUpdating 方法,以引發 Updating 事件。您可以處理這個事件,在更新之前先檢查參數的值並執行所有的前置處理作業。

若要執行該作業,SqlDataSourceView 會使用 UpdateCommand 文字和任何關聯的 UpdateParameters 屬性,建置 DbCommand 物件,然後針對基礎資料庫,執行 DbCommand 物件。在作業完成後,會呼叫 OnUpdated 方法以引發 Updated 事件。您可以處理這個事件,以檢查任何傳回值和錯誤碼,並執行任何後續處理。

Windows 98、 Windows 2000 SP4、 Windows Server 2003、 Windows XP Media Center Edition、 Windows XP Professional x64 Edition、 Windows XP SP2、 Windows XP Starter Edition

.NET Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱系統需求一節的內容。

.NET Framework

支援版本:2.0
顯示: