zoukankan      html  css  js  c++  java
  • 代码生成器

    手写代码生成器

     

    初来咋到,小试了手写代码生成器,望大牛们指点,下面是成型效果图

    需求:

    1、采用ORM(对象映射关系)模式;

    2、主要解决提供现有表结构,生成Model、DAL层;

    不多说了,下面进入正题

     读取文件

    窗体加载时,读取默认路径连接数据库文件信息

     窗体加载

    connstr.txt 文件信息

    data source=10.10.198.111;database=systemconfig;user id=sa;password=sa
     连接数据库
     生成代码
     创建Mode层代码
     查询表信息
     根据表中各列字段类型返回model属性类型
    //该部分可以忽略,主要是看起美观
     剔除列类型中包含system.字符串
     生成数据处理层代码
     编辑操作,更新列值
     获取表中所以列拼接
     获取更新或插入的列值
     获取SqlParameter参数集

    其他忽略部分,作为优化用

    复制代码
            /// <summary>
            /// 表名排序
            /// </summary>
            /// <param name="s"></param>
            private List<string> TablesDesc(List<string> lsttable)
            {
                var query = from s in lsttable orderby s ascending select s;
                List<string> tables = new List<string>();
                foreach (string item in query)
                {
                    tables.Add(item);
                }
                return tables;
            }
    
            /// <summary>
            /// 获取表名后缀
            /// </summary>
            /// <param name="tableName"></param>
            /// <returns></returns>
            private string GetTableName(string tableName)
            {
                if (!tableName.Contains("_"))
                {
                    return tableName;
                }
                return tableName.Split('_')[1];
            }
    复制代码
     
     
     
    标签: C#
  • 相关阅读:
    关于s3c6410 实现opengl的分析
    ARM9和ARM11的区别
    ARM9E 和 cortex a8 NEON 优化效率的对比
    armv6 的特点
    AMBA总线新一代标准AXI分析和应用
    linux下如何模拟按键输入和模拟鼠标
    opengl es 学习
    Jlink初使用
    Allegro 制作金手指封装
    世界之窗浏览器设置google搜索[转]
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3636999.html
Copyright © 2011-2022 走看看