最近在做ASP.NET的項(xiàng)目,因?yàn)樯婕暗綌?shù)據(jù)庫項(xiàng)目的綁定,而Eval和Bind一直老是忘記,現(xiàn)在Baidu了下,留個記號:
綁定表達(dá)式
<%# Eval(“字段名”) %>
<%# Bind(“字段名”)%>
最主要的區(qū)別:
1、Eval取出來的數(shù)據(jù)時只讀的,而Bind是可更新的數(shù)據(jù)。
2、Eval通常用來需要對數(shù)據(jù)進(jìn)行格式化成字符串,因而和Bind方法比,性能會有所下降。
3、在運(yùn)行時,Eval調(diào)用DataBinder對象的Eval方法,同時引用命名容器的當(dāng)前數(shù)據(jù)項(xiàng)。命名容器通常是包含完整記錄的數(shù)據(jù)綁定控件的最小組成部分,如 GridView 控件中的一行。因此,只能對數(shù)據(jù)綁定控件的模板內(nèi)的綁定使用 Eval 方法。具體內(nèi)容可以參考MSDN中關(guān)于DataBinder.Eval()方法的描述。
注意:當(dāng)前容器的數(shù)據(jù)項(xiàng):Container.DataItem
4、Bind()方法的運(yùn)用,主要應(yīng)用場景:GridView等可編輯控件的更新操作上。當(dāng)單擊Update按鈕時,使用 Bind 語法綁定的每個控件屬性值都會被提取出來,并傳遞給數(shù)據(jù)源控件以執(zhí)行更新操作。
如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答?。?點(diǎn)擊進(jìn)入論壇