zoukankan      html  css  js  c++  java
  • 我开发的内部ORM(二)Mapping组件

     “Mapping组件”主要用来“对象转化及复制数据”功能,欢迎大家给出宝贵的建议和意见

    一、Map功能

      Map是一个提供链式语法的属性映射工具(通俗一点说就是对象一的A属性映射大对象二的B属性)。Map和完全集成在Mapping中的。也只能通过Mapping类的来Map Custom(string fromName, string toName)创建。另外, Map类也有Map Custom(string fromName, string toName)方法,用来增加映射规则,这就是所谓的链式语法,Eg: Mapping.Custom("A1","B1").Custom("A2","B2").Custom("A3","B3")。另外,Map类含大部分Mapping类中“对象转化及复制数据”方法,这些方法在数据处理中会按遵循的指定的映射规则。 

    二、“对象转化及复制数据”主要功能:

      1. Map Custom(string fromName, string toName) 设置映射规则

        静态方法Mapping.Custom和实例方法Map.Custom

      2. T Convert<S, T>(S src) where T : new() 单个对象转化

        静态方法Mapping.Convert和实例方法Map.Convert

      3. 多个对象转化

        T[] Convert<S, T>(S[] array) where T : new() 转化数组

        IEnumerable<T> Convert<S, T>(IEnumerable<S> list) where T : new() 转化其他列表

        静态方法Mapping.Convert和实例方法Map.Convert

      4. static T[] ConvertTo<T>(DataTable dt) 转化DataTable为数组

        静态方法Mapping.ConvertTo和实例方法Map.ConvertTo

      5. void Copy<S, T>(S from, T to, string name) 复制单个属性

        静态方法Mapping.Copy和实例方法Map.Copy

      6. void Copy<S, T>(S from, T to, params string[] names) 复制多个属性

        静态方法Mapping.Copy和实例方法Map.Copy

      7. void Copy<S, T>(S from, T to) 复制S的所有属性

        静态方法Mapping.Copy和实例方法Map.Copy

      8. object Read<T>(T obj, string name) 读单个属性

        静态方法Mapping.Read(Mapping类独有方法)

      9. object[] Read<T>(T obj, string[] names) 读多个属性

        静态方法Mapping.Read(Mapping类独有方法)

      10. void Write<T>(T obj, string name, object val) 写单个属性

        静态方法Mapping.Read(Mapping类独有方法)

  • 相关阅读:
    MYSQL连接不上100061错误
    最小生成树
    装载问题
    贪心算法-- 纪念品分组
    折腾日记----「乱七八糟的过程」
    LeetCode ---- 474. 一和零「二维01背包」
    Erlang TCP 实例
    Erlang 入门 ---- 基础(一)
    SpringBoot ---- Spring Security
    LeetCode----1026. 节点与其祖先之间的最大差值
  • 原文地址:https://www.cnblogs.com/xiangji/p/2630137.html
Copyright © 2011-2022 走看看