代码生成器

手写代码生成器

 

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

需求:

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#
原文地址:https://www.cnblogs.com/Leo_wl/p/3636999.html