我开发的内部ORM(三)View组件

以下是View组件说明,欢迎大家给出宝贵的建议和意见:

View组件中有几个主要功能类。Wrapper包装类, View视图类, IView视图接口。

首先选择与当前视图最贴切的领域模型(Mode),使用Wrapper对象增加属性效果,由Wrapper对象包装(Wrap)领域数据(Mode),得到的IView视图数据就有新的用来绑定的属性了。主要用于绑定操作,对属性的操作及封装的属性的名称都是不区分大小写的。

一、对象格式化基本步骤

1. 首先创建当前类型包装对象,然后给包装对象增加效果(“属性”),再次把当前对象封装成代理对象,代理对象就可以直接绑定了。 

  

2. 页面绑定使用索引器绑定方式,<%#Eval("属性名")%>(使用索引器绑定方式<%#Eval("[属性名]")%>也可以) 

   

3. 绑定 

  

二、对象有关的格式化Custom(string showName, Func<T, object> fun)方法用于根据当前对象创建属性(showName)

  1. Custom(string showName, string name, Func<string, object> fun)等用于根据当前对象当前属性(name)创建新属性(showName) 

    

  2.Custom(string showName, string name, Func<string, object> fun)等用于根据当前对象当前属性(name)创建新属性(showName)

    

  3.Custom特例(参考这些特例的源码使用者封装自己特效):

    Cut(string showName, string name, int len, string add)等:对属性name截字

    Color(string showName, string name, string color): 对属性name增加颜色

    Red(string showName, string name): 对属性name标红

    Color(string showName, string name, string item, string color)等:对属性name中item子串增加颜色

    Red(string showName, string name, string item):标红属性name中item子串

三、逻辑有关的格式化

  1.FixCustom(string showName, Func<Func<object>> fun)方法用于创建和线性逻辑有关的的属性 

    

  2.FixCustom特例(参考这些特例的源码使用者封装自己特效):

    FixNum(string showName, Func<int, string> fun, int begin, int step):封装以begin开始步长为step的等差数列, fun是数字(数列中任意数)格式化显示

      (数据转化为字符串)的方法

    Count(string showName, int begin, int step)等:显示等差数列

    FixBool(string showName, Func<bool, string> fun):封装false和true交替特性,fun是bool值转化为字符串显示的方法

    FixBool(string showName, string trueStr, string falseStr): falseStr和trueStr交替显示效果

posted on 2012-08-09 13:49  xiangji  阅读(683)  评论(0编辑  收藏  举报

导航