前言:
一直被网友催,说要更新下 CYQ.Data 的枚举生成器,这工具自从V4.5版本之后,就没再发布过新版本,事实上,我也写了V4.55版本的枚举生成器,主体是感觉不太满意,没多大变化,所以一直没发布。
我们看一下V4.55的枚举生成器界面,相比V4.5好看了一点点,但还不太满意,感觉使用上仍有些不方便。
对使用理念的提升:
自从折腾微博粉丝精灵软件近2年左右,对软件的有了进一步的认识,自己都感觉使用不方便的东西,怎么能拿的出手让用户使用,所以,虽然有新版本,也没发布。
VS 插件的想法:
以前有打算写成Addin插件方式集成到VS开发环境,不过由于事多,没能静下心写,所以没写成。
由于网友催的紧,昨天就开始打算写Addin插件,准备弄个demo,看看Addin的基本流程,看了一会网上不多的教程,都极其简单,一运行就报错的那种。
经过多次静下心调试,发现是语言环境中文版本的默认代码的英文版产生的Bug,后经努力折腾,也能产生个菜单,点击也能出点东西。
发现了“外部工具”:
但感觉使用Addin开发起来不爽,工具菜单点多了,意识到了一个“外部工具”这个东西:
点开它出来:
通过简单配置,也能把工具集成进来,确定后,从上一张图片就能看到菜单里多出来的“CYQ.Data 项目配置“菜单了。
比较Addin和外部工具:
Addin:它能取VS环境的内部一些信息,比较包括打开的文档,文档类的成员之类的,如果你是要开发一些对VS解决方案内的项目作点事,比如给所有文档加头注释之类的就可折腾这个。
外部工具:比较独立,只是引入一链接点击,可独立开发,完成后添加下外部工具集成就可以了,适合折腾一些和VS内部环境变量无关的事,比如说CYQ.Data 项目配置工具。
确定了使用外部工具:
刚好我的,不需要和VS的环境打太多交道,所以外部工具这方式正好,既然可以独立开发,基于让使用简单方便的理念,我放弃了在原来枚举生成工具上重新改进开发的想法,重新写一个,花了一天一夜,写成了这个配置工具。
CYQ.Data.ProjectTool 配置工具的图如下:
ORM模式生成后的某个表的CS代码示例:
namespace Web.Entity.Demo
{
public class MyUsers : CYQ.Data.Orm.OrmBase
{
public MyUsers()
{
base.SetInit(this, "MyUsers", "DefaultConn2");
}
private Int32 _ID;
public Int32 _ID
{
get
{
return _ID;
}
set
{
_ID = value;
}
}
private String _UserName;
public String _UserName
{
get
{
return _UserName;
}
set
{
_UserName = value;
}
}
private DateTime _CreateTime;
public DateTime _CreateTime
{
get
{
return _CreateTime;
}
set
{
_CreateTime = value;
}
}
}
}
CYQ.Data 项目配置工具的相对改进点:
在这次的枚举进化到配置工具中,主要是做了些减法改进。
1:不再支持生成视图和存储过程枚举(考虑到使用率不高,而且不太方便在不同数据库移值)。
2:取消一次性配置中的“生成分页存储过程”和“生成日志表”的项,改进为在CYQ.Data V5中内部根据实际情况自动生成。
3:编码模式,除了枚举型,还支持多一项Orm模式。
4:对于枚举型编码方式,最终生成TableNames.cs一个cs文件;对于ORM模式,每个表都会生成一个对应的实体类(表名.cs)
5:自动保存所有配置,而且最新改动的配置存档为默认配置,方便下次改动。
通过本次改进,加外部工具的集成,使用起来就相当方便了,点开一下,再点“生成文件”,即可更新对数据的字段改动。
工具下载:
为了方便有特殊需要改动的,这次配置工具,提供源码下载。
下载地址:http://www.cyqdata.com/download/article-detail-426
PS:配置工具CYQ.Data.ProjectTool打包在在CYQ.Data V5版本框架里一起提供下载,配置工具的源码则独立提供下载。