zoukankan      html  css  js  c++  java
  • 分享我的数据处理类库,欢迎拍砖

    说明:首先在实体类中定义Attribute对象(主要包括表、字段信息),然后通过反射读取该对象信息,再进行数据处理

        一、类关系图如下:

    二、各类用途说明

        BaseEntity:实体类的基类,实体类必须继承该类。

        TableConfig/FieldConfig:描述表及字段配置信息,其中FieldConfig包括FieldName(字段名称)、DataType(数据类型)、Size(字段大小)、IsInsert(是否Insert操作)、IsUpdate(是否Update操作)五个字段信息。

        QueryHelper:查询对象。

        SplitPageParameter:分页对象。

        IDbProvider:数据处理接口。

        OperationAction:数据操作枚举。

        DataProvider:实现IDbProvider接口,并提供基础数据操作。

        SqlDbProvider/OleDbProvider:继承自DataProvider并提供相应操作。

        DataFactory:向外部提供IDbProvider服务。

    三、配置文件需提供如下信息:

    Code

        CNT:数据连接字符串

        DBTYPE:数据库类型(目前只支持MSSQL/OLEDB)

        EntityFile:实体类程序集信息

    四、接口说明:

            void Save(BaseEntity info):保存实体类

            void Update(BaseEntity info, QueryHelper query):根据条件更新实体类

            void Delete(QueryHelper query):根据条件删除数据

            BaseEntity Find(QueryHelper query):根据条件读取一条数据

            List<BaseEntity> Finds(QueryHelper query):根据条件读取多条数据

            List<BaseEntity> Finds(SplitPageParameter sp):根据条件分页读取数据

            void UpdateFields(string tableName, string[] fieldNames, object[] fieldValues, QueryHelper query):根据条件更新指定表的指定字段

     五、核心函数说明

          (1)、DataProvider.cs

    Code

          此函数根据对象类型,通过反射获取实体类信息及实体类字段值,然后组织SQL语句为IDbCommand赋值

     源码下载

    应用场景:

         适合数据处理较小的应用

    使用:

    Code

    欢迎大家拍砖

  • 相关阅读:
    MDK软件2020年到期和谐方法
    TinyMCE插件CodeSample前后端应用
    KEIL MDK编译后的代码量和RAM使用详解
    pdf密码解除工具
    Keil c中自定义带可变参数的printf函数
    关于"云服务器被检测到对外攻击已阻断该服务器对其它服务器端口的访问"的解决措施
    在 __CC_ARM 编译器环境下,使用$Sub$$ 与 $Super$$ 的“补丁”功能
    thinkphp前台html格式化输出日期
    ELINK编程器典型场景之序列号烧写
    数据在数组中存储的顺序:小端 OR 大端模式 详解
  • 原文地址:https://www.cnblogs.com/land/p/dblib.html
Copyright © 2011-2022 走看看