一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

一句代碼實(shí)現(xiàn)批量數(shù)據(jù)綁定[上篇]

  對(duì)于一個(gè)以數(shù)據(jù)處理為主的應(yīng)用中的UI層,我們往往需要編寫相當(dāng)多的代碼去實(shí)現(xiàn)數(shù)據(jù)綁定。如果界面上的控件和作為數(shù)據(jù)源的實(shí)體類型之間存儲(chǔ)某種約定的映射關(guān)系,我們就可以實(shí)現(xiàn)批量的數(shù)據(jù)綁定。為了驗(yàn)證這種想法,我寫了一個(gè)小小的組件。這個(gè)小玩意僅僅是我花了兩個(gè)小時(shí)寫的,其中還有很多問(wèn)題沒(méi)有解決,比如對(duì)于空值的處理,特殊控件屬性值的HTML編碼問(wèn)題,以及頻繁反射的性能問(wèn)題,僅僅演示一種解決思路而已。本篇著重介紹如何通過(guò)這個(gè)組件來(lái)解決我們?cè)谶M(jìn)行數(shù)據(jù)綁定過(guò)程中的常見問(wèn)題,下篇會(huì)介紹它的設(shè)計(jì)。[源代碼從這里下載]

目錄:
一、基于控件ID/實(shí)體屬性名映射的數(shù)據(jù)綁定
二、一句代碼實(shí)現(xiàn)批量數(shù)據(jù)綁定
三、修正綁定數(shù)據(jù)的顯示格式
四、過(guò)濾不需要綁定的屬性
五、多個(gè)控件對(duì)應(yīng)同一個(gè)實(shí)體屬性

  一、基于控件ID/實(shí)體屬性名映射的數(shù)據(jù)綁定

  我的這個(gè)組件暫時(shí)命名為DataBinder好了(注意和System.Web.UI.DataBinder區(qū)分),我們用它來(lái)將一個(gè)實(shí)體對(duì)象綁定給指定的容器控件中的所有子控件。下面是DataBinder的定義,兩個(gè)BindData方法實(shí)現(xiàn)具體的綁定操作。

public class DataBinder
{
public event EventHandler<DataBindingEventArgs> DataItemBinding;
public event EventHandler<DataBindingEventArgs> DataItemBound;

public static IEnumerable<BindingMapping> BuildBindingMappings(Type entityType, Control container, string suffix = "");

public void BindData(object entity, Control container, string suffix = "");
public void BindData( object entity,IEnumerable<BindingMapping> bindingMappings);
}

NET技術(shù)一句代碼實(shí)現(xiàn)批量數(shù)據(jù)綁定[上篇],轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 婷色| 香蕉草草久在视频在线播放 | 久草色播 | 亚洲合集 | 美女精品一区二区 | 国产综合视频在线观看一区 | 久久有码中文字幕 | 91精品免费视频 | 国产精品美女网站在线看 | 九九精品在线播放 | 五月婷婷丁香色 | 韩国午夜理伦三级2020宅男 | 五月婷婷影视 | 久久久久久久久久久大尺度免费视频 | 中文字幕在线视频在线看 | 黑人一区二区三区中文字幕 | 樱花aⅴ一区二区三区四区 影音先锋 色天使 | 伊人加勒比 | 日韩视频精品在线 | 成人福利 | 国产亚洲精品中文带字幕21页 | 午夜激情在线观看 | 亚洲激情成人网 | 一二三区免费视频 | 99激情网 | 欧美性与交视频在线观看 | 2021最新国产成人精品免费 | 亚洲国产高清视频 | 亚洲欧洲国产经精品香蕉网 | 成年人香蕉视频 | 91在线视频免费观看 | 午夜国产精品视频 | 91国视频在线观看 | 日韩一区二区免费看 | 91成人午夜精品福利院在线观看 | 国内精品久久久久久中文字幕 | 国产高清a| 亚洲三级色 | 丁香婷婷六月 | 国内免费高清视频在线观看 | 九九在线 |