轻量级代码生成器-OnlyCoder 第二篇

时间:2023-03-09 15:07:05
轻量级代码生成器-OnlyCoder 第二篇

最近利用业余时间将OnlyCoder又重新打造了一番,使其使用起来更简单、更顺手。

相关的帮助文档也已发布了版本。

界面改版,UI采用了DotNetBar2组件。

还是先看下UI效果吧。
轻量级代码生成器-OnlyCoder 第二篇

由于使用了 ICSharpCode.TextEditor.TextEditorControl 控件,貌似与DotNetBar2 存在不兼容问题,还在解决中。只要不打开模板编辑器就不会出现闪退的情况。

重点说下项目管理:

轻量级代码生成器-OnlyCoder 第二篇

可在这配置生成的项目信息,项目的中文名,英文名。

项目里面可配置表相关信息,例如表的前缀、格式化后的表名,例如的表为System_Users,由于MySql表名均为小写 这个时候可以将格式化后的表名设置为Users,可在生成后的类中不体现System_前缀。

轻量级代码生成器-OnlyCoder 第二篇

接下来看下帮助文档:

轻量级代码生成器-OnlyCoder 第二篇

列举了模板编写相关的上下文字段和帮助函数。可根据语法自行编写适合自己的项目模板!

看一个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