轻量级代码生成器-OnlyCoder 第二篇
最近利用业余时间将OnlyCoder又重新打造了一番,使其使用起来更简单、更顺手。
相关的帮助文档也已发布了版本。
界面改版,UI采用了DotNetBar2组件。
还是先看下UI效果吧。
由于使用了 ICSharpCode.TextEditor.TextEditorControl 控件,貌似与DotNetBar2 存在不兼容问题,还在解决中。只要不打开模板编辑器就不会出现闪退的情况。
重点说下项目管理:
可在这配置生成的项目信息,项目的中文名,英文名。
项目里面可配置表相关信息,例如表的前缀、格式化后的表名,例如的表为System_Users,由于MySql表名均为小写 这个时候可以将格式化后的表名设置为Users,可在生成后的类中不体现System_前缀。
接下来看下帮助文档:
列举了模板编写相关的上下文字段和帮助函数。可根据语法自行编写适合自己的项目模板!
看一个Model 类的模板代码:
{setting:outExtension=".cs" outFolder="/Model/" outFileName="@Model.CurrentFormatTableName" /}
#region
//======================================================================
// Copyright (c) @Model.CurrentProjectName development team. All rights reserved.
// 所属项目:@Model.CurrentProjectName
// 创 建 人:@Model.CurrentProjectName development team
// 创建日期:@DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
// 用 途:@Model.CurrentTableInfo.Description (@Model.CurrentFormatTableName)实体类
//======================================================================
#endregion using System;
using System.Text;
using System.Collections.Generic;
using System.Data; namespace @string.Concat(Model.CurrentProjectName,".Model")
{
/// <summary>
/// @Model.CurrentTableInfo.Description
/// </summary>
public class @Model.CurrentFormatTableName
{
@{
List<ColumnInfo> columnInfoList=@Model.CurrentTableColumnInfoList;
if(columnInfoList!=null&&columnInfoList.Count()>)
{
foreach(ColumnInfo columnInfo in columnInfoList)
{
@:private @Raw(ParseHelperService.DBType2CSharpType(@Model.CurrentDbType,@columnInfo)) @string.Concat("_",columnInfo.Name.ToLower());
}
@:
foreach(ColumnInfo columnInfo in columnInfoList)
{
@:/// <summary>
@:/// @columnInfo.Description
@:/// </summary>
@:public @Raw(ParseHelperService.DBType2CSharpType(@Model.CurrentDbType,@columnInfo)) @columnInfo.Name
@:{
@: get{ return @string.Concat("_",columnInfo.Name.ToLower()); }
@: set{ @string.Concat("_",columnInfo.Name.ToLower()) = value; }
@:}
@:
}
}
else
{
@:columnInfoList is null
}
}
}
}
欢迎进群沟通下载:580695558
轻量级代码生成器-OnlyCoder 第二篇的更多相关文章
- 轻量级代码生成器-OnlyCoder 第一篇
程序猿利器:代码生成器,使用代码生成器已经好几年了,增删改查各种生成,从UI到DATA层均生成过.之前有使用过动软的,T4模板等.... T4生成实体还是没有问题的,但是生成MVC视图就有点烦杂了, ...
- 轻量级代码生成器-OnlyCoder
程序猿利器:代码生成器,使用代码生成器已经好几年了,增删改查各种生成,从UI到DATA层均生成过.之前有使用过动软的,T4模板等.... T4生成实体还是没有问题的,但是生成MVC视图就有点烦杂了, ...
- 轻量级ORM框架——第二篇:Dapper中的一些复杂操作和inner join应该注意的坑
上一篇博文中我们快速的介绍了dapper的一些基本CURD操作,也是我们manipulate db不可或缺的最小单元,这一篇我们介绍下相对复杂 一点的操作,源码分析暂时就不在这里介绍了. 一:t ...
- 【开源.NET】 轻量级内容管理框架Grissom.CMS(第二篇前后端交互数据结构分析)
这是 CMS 框架系列文章的第二篇,第一篇开源了该框架的代码和简要介绍了框架的目的.作用和思想,这篇主要解析如何把sql 转成标准 xml 配置文件和把前端post的增删改数据规范成方便后台解析的结构 ...
- SaltStack 入门到精通第二篇:Salt-master配置文件详解
SaltStack 入门到精通第二篇:Salt-master配置文件详解 转自(coocla):http://blog.coocla.org/301.html 原本想要重新翻译salt-mas ...
- Farseer.net轻量级开源框架 中级篇:UrlRewriter 地址重写
导航 目 录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 中级篇: Cookies.Session.Request 下一篇:Farseer.net轻量 ...
- Farseer.net轻量级开源框架 入门篇:添加数据详解
导航 目 录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 入门篇: 分类逻辑层 下一篇:Farseer.net轻量级开源框架 入门篇: 修改数据详解 ...
- Farseer.net轻量级开源框架 中级篇:动态数据库访问
导航 目 录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 中级篇: 自定义配置文件 下一篇:Farseer.net轻量级开源框架 中级篇: 数据库切换 ...
- [ 高并发]Java高并发编程系列第二篇--线程同步
高并发,听起来高大上的一个词汇,在身处于互联网潮的社会大趋势下,高并发赋予了更多的传奇色彩.首先,我们可以看到很多招聘中,会提到有高并发项目者优先.高并发,意味着,你的前雇主,有很大的业务层面的需求, ...
随机推荐
- javaWeb学习总结(11)- 监听器(Listener)学习
一.监听器介绍 1.1.监听器的概念 监听器是一个专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动.监听器其 实就是一个实现特定接口的普 ...
- 开涛spring3(6.9) - 对JDBC的支持 之 7.1 概述
7.1 概述 7.1.1 JDBC回顾 传统应用程序开发中,进行JDBC编程是相当痛苦的,如下所示: //cn.javass.spring.chapter7. TraditionalJdbcTes ...
- springboot 1.5.2 thymeleaf 添加templates 静态资源访问路径
从velocity 模板切换到thymeleaf 后, 默认模板位置为templates , 有时候静态资源方在该目录下会出现访问404错误 解决办法: application.properties ...
- MysqlRouter 实现mysql5.6读写分离
下载,安装 [root@localhost src]# cd /usr/local/src/ [root@localhost src]# wget http://dev.mysql.com/get ...
- 默认路由、RIPv2、OSPF、EIGRP配置(全网全通)
1:默认路由 遇到问题:给r2配置向右的单项默认路由,通过PC1去ping主机PC2,一直显示Request timed out, 解决方法:r2配置如下: r2(config)#ip route 0 ...
- window.opener的用法
window.opener 主要用来打开窗体的父窗体,可以通过这种方式设置父窗体的值或者调用js方法. 例如: 1,window.opener.test(); ---调用父窗体中的test()方法 2 ...
- (转) Java RMI 框架(远程方法调用)
"原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://haolloyin.blog.51cto.com/1177454/33 ...
- php 引用一点要小心使用
今天遇见一个问题,我两次循环都是用的 foreach($temp as $k=>&$v){ // 用引用直接替换数组值 } foreach($temp2 as $k=>$v){ / ...
- 在Visual Studio for Mac中使用fastlane管理iOS的provision
Xamarin开发中,最烦的就是provision的管理了. 全手工的话,要先创建一个key,上传后生成cert文件,再创建provision.如果在手机上调试,还要把手机加到provision中去. ...
- 一篇文章介绍GItHub的基础使用
最近复习了一下Git的使用,简单总结了一些.以供以后查阅和同行参考. 一,安装 首先是Linux下: 打开shell ,输入 sudo apt-get install git-core 之后回车输入密 ...