轻量级代码生成器-OnlyCoder 第二篇
最近利用业余时间将OnlyCoder又重新打造了一番,使其使用起来更简单、更顺手。
相关的帮助文档也已发布了版本。
界面改版,UI采用了DotNetBar2组件。
还是先看下UI效果吧。
由于使用了 ICSharpCode.TextEditor.TextEditorControl 控件,貌似与DotNetBar2 存在不兼容问题,还在解决中。只要不打开模板编辑器就不会出现闪退的情况。
重点说下项目管理:
可在这配置生成的项目信息,项目的中文名,英文名。
项目里面可配置表相关信息,例如表的前缀、格式化后的表名,例如的表为System_Users,由于MySql表名均为小写 这个时候可以将格式化后的表名设置为Users,可在生成后的类中不体现System_前缀。
接下来看下帮助文档:
列举了模板编写相关的上下文字段和帮助函数。可根据语法自行编写适合自己的项目模板!
看一个Model 类的模板代码:

1 {setting:outExtension=".cs" outFolder="/Model/" outFileName="@Model.CurrentFormatTableName" /} 2 #region 3 //====================================================================== 4 // Copyright (c) @Model.CurrentProjectName development team. All rights reserved. 5 // 所属项目:@Model.CurrentProjectName 6 // 创 建 人:@Model.CurrentProjectName development team 7 // 创建日期:@DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") 8 // 用 途:@Model.CurrentTableInfo.Description (@Model.CurrentFormatTableName)实体类 9 //====================================================================== 10 #endregion 11 12 using System; 13 using System.Text; 14 using System.Collections.Generic; 15 using System.Data; 16 17 namespace @string.Concat(Model.CurrentProjectName,".Model") 18 { 19 /// <summary> 20 /// @Model.CurrentTableInfo.Description 21 /// </summary> 22 public class @Model.CurrentFormatTableName 23 { 24 @{ 25 List<ColumnInfo> columnInfoList=@Model.CurrentTableColumnInfoList; 26 if(columnInfoList!=null&&columnInfoList.Count()>0) 27 { 28 foreach(ColumnInfo columnInfo in columnInfoList) 29 { 30 @:private @Raw(ParseHelperService.DBType2CSharpType(@Model.CurrentDbType,@columnInfo)) @string.Concat("_",columnInfo.Name.ToLower()); 31 } 32 @: 33 foreach(ColumnInfo columnInfo in columnInfoList) 34 { 35 @:/// <summary> 36 @:/// @columnInfo.Description 37 @:/// </summary> 38 @:public @Raw(ParseHelperService.DBType2CSharpType(@Model.CurrentDbType,@columnInfo)) @columnInfo.Name 39 @:{ 40 @: get{ return @string.Concat("_",columnInfo.Name.ToLower()); } 41 @: set{ @string.Concat("_",columnInfo.Name.ToLower()) = value; } 42 @:} 43 @: 44 } 45 } 46 else 47 { 48 @:columnInfoList is null 49 } 50 } 51 } 52 }
欢迎进群沟通下载:580695558
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
2016-07-09 Windbg+Procdump解决w3wp.exe CPU过百问题