色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

一句代碼實現批量數據綁定[上篇]

  對于一個以數據處理為主的應用中的UI層,我們往往需要編寫相當多的代碼去實現數據綁定。如果界面上的控件和作為數據源的實體類型之間存儲某種約定的映射關系,我們就可以實現批量的數據綁定。為了驗證這種想法,我寫了一個小小的組件。這個小玩意僅僅是我花了兩個小時寫的,其中還有很多問題沒有解決,比如對于空值的處理,特殊控件屬性值的HTML編碼問題,以及頻繁反射的性能問題,僅僅演示一種解決思路而已。本篇著重介紹如何通過這個組件來解決我們在進行數據綁定過程中的常見問題,下篇會介紹它的設計。[源代碼從這里下載]

目錄:
一、基于控件ID/實體屬性名映射的數據綁定
二、一句代碼實現批量數據綁定
三、修正綁定數據的顯示格式
四、過濾不需要綁定的屬性
五、多個控件對應同一個實體屬性

  一、基于控件ID/實體屬性名映射的數據綁定

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

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技術一句代碼實現批量數據綁定[上篇],轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 海安县| 中西区| 神池县| 青铜峡市| 谢通门县| 湘阴县| 论坛| 徐汇区| 泰兴市| 建瓯市| 怀仁县| 清徐县| 滨海县| 西丰县| 安新县| 千阳县| 武川县| 托克逊县| 高安市| 安岳县| 云浮市| 林周县| 屏南县| 花垣县| 清原| 水城县| 外汇| 夏河县| 甘洛县| 天门市| 鱼台县| 原阳县| 东海县| 永宁县| 平武县| 丹东市| 靖安县| 张家界市| 兰坪| 盐山县| 龙口市|