• 我开发的内部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交替显示效果

  • 相关阅读:
    SpringBoot中使用Redis
    SpringBoot中实现事务
    SpringBoot中集成持久层框架Mybatis
    JavaScript遍历数组、对象
    web面试(一)
    create-react-app初始化报错及配置less
    JavaScript异步(SuperAgent , isomorphic-fetch)
    JavaScript数组
    JavaScript(token,cookie)
    JavaScript时间段重叠
  • 原文地址:https://www.cnblogs.com/xiangji/p/2630157.html
Copyright © 2020-2023  润新知