標籤:os 使用 io strong ar for 資料 art div
DictionaryEntry類是一個字典集合,主要包括的內容是鍵/值對。這樣的組合方式能夠方便地定位元據,當中的“鍵”具備唯一性,類似於資料庫中的“id”,一個id相應一天記錄,而一個鍵僅僅相應一個值。
使用DictionaryEnry類能夠方便地設定和檢索資料。儘管被稱為字典集合,但DictionaryEntry並不包括一組資料,而僅僅是一個“鍵/值”對,一般通過“IDictionaryEnumerator”、“IOrderedDictionary”或Hashtable來擷取DictionaryEntry執行個體,這一點須要注意。
文法定義:
DictionaryEntry類的文法定義例如以下所看到的,注意其屬於“struct”結構類型。
[SerializableAttribute]
[ComVisibleAttribute(true)]
public struct DictionaryEntry
DicctionaryEntry類的構造文法例如以下所看到的,當中key表示鍵,value表示值。
public DictionaryEntry (object key,object value)
使用DictionaryEntry類一般不用newkeyword執行個體化,而是使用“foreach”遍曆的方法,從某一集合擷取DictionaryEntry的執行個體,用法例如以下:
foreach(DictionaryEntry dic in e.Keys)
DictionaryEntry的屬性
Key :字典的鍵,必須唯一
Value:字典的值。可通過檢索“鍵”擷取或設定
以下示範怎樣在程式中使用DictionaryEntry類的這兩個屬性:
Response.Write("這是當前資料表格的鍵列表:<br/>");int i =0;foreach(DictionaryEntry dic in e.Keys){ //遍曆並顯示資料表格全部的鍵 i++; Response.Write("第"+ i.ToString() + "個鍵為:" +dic.Key.ToString() +",值為:" + dic.Value.ToString());}
用DictionaryEntry擷取GridView中的資料更新
DictionaryEntry類通常不須要為自己設定資料,而是用來擷取某一個集合中的資料。本例使用DictionaryEntry類執行個體化“IOderedDictionary”中的資料,當中“IOrderedDictionary”包括的是GridView的鍵和值。
在使用GridView更新資料時,須要注意例如以下三點。
1、被更新的記錄的主鍵:主鍵用來確定更新的資料的唯一性。
2、更新記錄的新資料:用在更新資料庫語句中。
3、更新記錄的舊資料:用來推斷更新的一些條件,比方說資料等於1時不被更新。
通過上述三點,能夠知道GridView更新資料的一些原理。在GridView更新事件中,提供三個參數來表示上面的三種資料,分別為“Keys”、“NewValues”、“OldValues”。這些資料都以“IOrderedDictionary”的形式儲存。
本例要實現的功能是目前使用者更新資料後,顯示目前使用者更新的資料,同一時候顯示資料表格的主鍵,主要完畢的是一個提示功能。
在GridView的“Row_Updated”事件中,擷取資料更新的鍵值,代碼例如以下:
protected void GridView1_RowUpdated(object sender,GridViewUpdatedEventArgs e){ foreach(DictionaryEntry mydictionary in e.OldValues) { //顯示改動前的資料 Response.Write("改動前的資料——" + mydictionary.Key.ToString() + ":" + mydictionary.Value.ToString()); } foreach(DictionaryEntry mydictionary in e.NewValues) { //顯示改動後的資料 Response.Write("改動後的資料——" + mydictionary.Key.ToString() + ":" + mydictionary.Value.ToString()); } foreach(DictionaryEntry mydictionary in e.Keys) { //顯示當前表格的主鍵——可能有多個,假設沒有則無法更新 Response.Write("<br/>當前主鍵——" + mydictionary.Key.ToString() + ":" + mydictionary.Value.ToString()); } }
字典實體類:DictionaryEntry類