热门排行
简介
距离上次发布已经相隔13个月了,在此特别感谢许多朋友的建议和鼓励,历经了多个版本的更迭后,才有了现在这个功能更多,更加实用的东西。虽然依旧没什么技术含量,不过毕竟是自己花了很多时间的,还是自荐一下吧。
个人感觉目前的实用性还可以,至少在我们Team内用的还是不错。同时说一下,之所以不用广为流传的其它代码生成器,比如Code Smith、动网生成器,主要是如下原因:
1:这些代码生成器的代码生成过程不够简捷;
2:我们公司项目都是使用存储过程;
3:如果我改了一个表的结构,那么基本就要重新生成一遍代码;
4:这些软件的体积都不小,换台机器就要安装一遍,个人还是比较喜欢不写注册表的绿色软件。
所以我就自己写了一个方便自己使用的代码生成器,同时也当是练练手。
下面略过开发流程,简单介绍一下本软件的一些情况。
一:使用环境和适用范围
本软件主要是用来做.Net开发代码生成的,适用环境为VS2008+ .Net framework4.0 Client Profile SQL2008+ C#; 适用于使用传统三层架构,使用存储过程,并且对性能没有严格控制的中小型项目。
二:简单介绍
本软件提供了一整套数据库操作的框架。Web层、BLL层、DAL层以及Utility和Model层代码都可以自动生成。当然最简单的是直接生成解决方案,然后你就可以直接针对某个表进行增删改查了。各个层的代码和传统的写法略有差异,主要体现在DAL层数据库操作和SQL Server存储过程的写法上。其它层基本符合OO,代码结构简单,有较强的可读性。主要特点如下:
1:数据库交互只用写一次,即使你不断的增加、修改方法,DAL层的代码都不需要修改;
2:对于存储过程,不再需要繁琐的设置SQL参数;
3:每个数据表只对应一个存储过程,结构清晰,易于维护;
4:BLL支持事务过程,支持选择数据库操作时的智能提示;
5:页面层的CS代码简单,便于维护和调试;
三:主要功能
1:根据需要自动生成实体类、存储过程、WEB层前后端、BLL层的几个基本业务操作的代码。
2:支持批量导出代码,生成相应的文件类型,方便直接加入项目;
3:支持直接导出VS2010项目 (需要重新编译项目) ;
4:支持模板的自定义和20种自定义参数,使用NVelocity规则;
5: BLL层直接支持T-SQL事务,使用简单;
6:绿色软件,体积小,便于携带;
7:界面美观,有不错的用户体验;
四:使用方法和功能详细介绍
1:软件登陆,初始化项目参数:这步按提示输入参数就可以了。需要注意的是,服务器参数可以在Config.xml 中手动设置,也可以直接输入
2:软件主界面:目前提供了全部功能。后续版本会提供一些新加功能,比如自定义模板的管理。默认是显示软件支持的自定义参数列表,目前一共支持20种自定义参数。如果你还需要什么参数,请告诉我,谢过。
3:从左侧表列表中选择所需要的数据表后,点击生成,主窗口为生成代码,右下角窗口为当前选择表的增删改查T-SQL语句:
4:生成C#实体类和基本数据库操作的动作表枚举:
5:生成存储过程,每个表对应一个存储过程,和传统的每个方法对应一个存储过程不同,这样可以大大减少存储过程的数量,方便维护和移动:
6:生成Web层前台代码:
7:生成Web层后台代码:
8:生成BLL层代码:
9:生成自定义代码,可以在vm文件夹下增删扩展名为.vm的模板文件,句法请查看demo.vm文件:
10:导出当前生成的代码,会根据当前选择生成默认文件夹,如自定义模块会全部生成在Custom文件夹下:
11:根据当前数据库,生成整套解决方案。目前需要将五个项目手动加入解决方案的编译列表,再手动重新编译:
12:软件帮助:
五:存在的问题
1:可能是由于使用WPF的问题:首次启动较慢,视机器性能而定,一般会耗时10S左右
2:肯定尚有很多未发现的问题,希望大家得到大家的帮助,我一定会努力完善。
六:更新历史
V 3.9.0.0
增加:支持一键在SQL Server中生成存储过程
增加:对不支持数据类型的错误提示,防止程序崩溃
增加:创建存储过程时的唯一性判断
增加:数据库列表和数据类型映射的管理
修改:对于多表,只导出一个SQL SP的Script文件
修改:Insert返回long而不是int
修改:一个存储过程可能会生成乱码的问题
修改:一些用于增强用户体验的布局调整
V 3.8.0.0
增加:支持根据数据库直接导出一份比较漂亮的HTML文档
增加:基本方法SelectAll
修改:生成的存储过程不再独立到单个文件,现在只使用一个文件,方便数据库操作
修改:Guid为主键时,生成的解决方案有些方法无法、正常实现
修改:点击返回按钮后无法、正常生成解决方案
修改:其它几个已知Bug
V 3.7.0.0
增加:数据读取支持分页控制
增加:服务器列表管理按钮
增加:统一出错信息的提示窗口,信息提示更加友好
修改:代码重构,优化
修改:已知Bug修复
修改:直接可以重新编译解决方案,不需要手动把项目加入编译列表
V3.6.0.0
增加:管理自定义模板,模板编辑支持智能提示和快捷键操作
修改:更新部分窗口美化,增加出错提示和版本提示
修改:几个特殊数据类型会导致存储过程无法执行
修改:点击重置会重新加载数据表列表和字段列表
修改:代码重构,提高代码执行效率
修改:修复已知特殊字符会使得解决方案产生错误,从而不能顺利编译的问题
修改:已知的其它几个代码生成的问题(DateTime类型转换,GUID作为主键,NText类型使用like等
修改:部分代码生成的修改,生成的代码更加健壮
V3.5.0.0
增加:自定义参数类型
增加:提示新版本和自动更新
修改:修复数据库名或者表名有特殊字符时生成的解决方案会编译不通过
修改:修复(MAX)数据类型默认长度的问题
V3.4.0.0
增加:直接根据数据库生成解决方案
增加:标签页支持双击关闭
修改:界面布局调整,增强用户体验
修改:大幅增强自定义代码功能,可以自定义模板生成复杂代码块
修改:修复一个数据类型的映射问题
修改:修复一个已知页面控件显示的错误
V3.3.0.0
增加:生成代码支持导出为相关文件
修改:界面美化,增强用户体验
修改:代码格式化,自动着色和折叠
修改:修复一个会导致自动退出的Bug
修改:部分优化自动生成的代码
V3.2.0.0
修改:BLL层代码根据Table自动生成,更加符合面向对象的原则
修改:WEB前端方法调用更加简单
修改:修复已知的几个代码生成错误的问题
修改:Web后台代码调整,更加通用
V3.1.0.0
增加:代码生成时对非主键自增字段的处理逻辑
增加:增加对中文字段和中文数据库名的支持
修改:存储过程中用中括号括起字段名,避免冲突
修改:存储过程中增加唯一性确定过程,后端代码在插 入和更新的过程中加入唯一性判断的事务
修改:说明性文字部分修改和修正
V3.0.0.0
增加:界面布局调整,更加符合用户体验
增加:界面切换效果
修改:取消BLL和DAL层的代码自动生成,改为通用类,无需根据数据表生成
修改:大幅修改代码生成,支持使用多数据库操作的T-SQL事务,整个数据库访问流程更加灵活,支持数据库操作的智能提示
修改:修复已知的几个代码生成错误的问题
V2.1.0.0
增加:全面支持SQL Server 2008 R2
修改:修复两个已知会造成程序退出的Bug
V2.0.0.0
增加:BLL,DAL,WEB层的自动代码生成
增加:“关于”和“帮助”页面
修改:软件正式更名为 我的代码生成器(My Generator)
修改:布局调整
V1.8.0.0
优化:一些用户体验的调整,切换功能自动生成对应代码,字段列表选择更加符合用户体验
修改:修复一个生成的代码中,如果有DateTime类型,那么默认空值存入数据库可能会溢出的错误
修改:增加某些字段类型的精度显示
修改:登录窗口的服务器和数据库名支持手动输入
修改:布局调整,增加反选按钮
V1.7.0.0
增加:DB Server的别名功能,可以为同一个DB Server 设置不同的登录账户;
优化:改进默认本地网站,兼容SQL2005/SQL2008;
修改:布局调整,可以最小化窗口;
V1.6.0.0
增加:增加多个可自动生成项;
修改:所有可设置部分整合到一个Config.xml中;
修改:布局调整;
V1.5.0.0
增加:支持自己导入数据库列表;
优化:优化了代码,现在远程连接速度大幅度提高;
修改:更新了SQL代码生成规则;
修改:完善了C#实体类和存储过程的生成方案;
修改:布局调整;
V1.4.0.0
增加:可以自动生成每个Table的基本SQL查询语句。
V1.3.0.0
优化:代码优化,调整界面和模板内容;
修改:软件语言中文化;
V1.2.0.0
增加:增加了两个模板;
优化:代码优化,修复一些Bug;
V1.1.0.0
优化:代码优化,加快远程连接的速度;
修改:修复一些Bug,调整界面;
V1.0.0.0
增加:提供最基本的实体类生成;