CodeSmith 简单使用和常用模板

1、简介

CodeSmith 是一种基于模板的代码生成工具,它使用类似于 ASP.NET的语法来生成任意类型的代码或文本。

2、软件布局

整体布局和visual studio系列相似,用过VS开发对此软件布局会很熟悉,加上模板语句类似ASP.NET对.NET开发人员相对友好。大致布局如下:

注:本文截图和运行环境是CodeSmith Generator 8.0.1

3、连接数据库

添加数据源,具体如下图

SQL连接字符串示例 

server=localhost;database=sales;user=root;CharSet=utf8;password=root;port=3306;Allow User Variables=True;

4、新建模板

打开模板浏览器,右击模板文件夹新建模板

5、模板执行

6、执行结果示例

7、常用模板

1)生成实体.cst

<%-- 
Name: 数据库表实体代码生成器
Author: GoodTime
Description: 实体
DateTime: 2022-1-13
--%>
<%@ CodeTemplate Language="C#" TargetLanguage="C#" Debug="False" Description="Create a list of properties from database table." %>
<%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Context" Description="Table that the object is based on." %>
<%@ Map Name="CSharpAlias" Src="System-CSharpAlias" Description="System to C# Type Map" %>
<%@ Assembly Name="SchemaExplorer" %>
<%@ Import Namespace="SchemaExplorer" %><% foreach (ColumnSchema column in this.SourceTable.Columns) {  %>public <%= CSharpAlias[column.SystemType.FullName] %> <%= StringUtil.ToPascalCase(column.Name) %>{ get;set; }<% } %>

运行效果

2) 生成构造实体

<%-- 
Name: 数据库表实体代码生成器
Author: GoodTime
Description: 实体属性
DateTime: 2022-1-13
--%>
<%@ CodeTemplate Language="C#" TargetLanguage="C#" Debug="False" Description="Create a list of properties from database table." %>  
<%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Context" Description="Table that the object is based on." %>  
<%@ Map Name="CSharpAlias" Src="System-CSharpAlias" Description="System to C# Type Map" %>  
<%@ Assembly Name="SchemaExplorer" %>  
<%@ Import Namespace="SchemaExplorer" %>  <% foreach (ColumnSchema column in this.SourceTable.Columns) {  %>  
private <%= CSharpAlias[column.SystemType.FullName] %> _<%= StringUtil.ToCamelCase(column.Name) %>;  public <%= CSharpAlias[column.SystemType.FullName] %> <%= StringUtil.ToPascalCase(column.Name) %>  
{  get { return _<%= StringUtil.ToCamelCase(column.Name) %>; }  set { _<%= StringUtil.ToCamelCase(column.Name) %> = value; }  
}  <% } %>

 运行效果

 3)生成实体类

<%-- 
Name: 数据库表实体代码生成器
Author: GoodTime
Description: 实体类
DateTime: 2022-1-13
--%>
<%@ CodeTemplate Language="C#" TargetLanguage="C#" Debug="False" Description="Create a list of properties from database table." %>  
<%@ Property Name="SourceData" Type="SchemaExplorer.DatabaseSchema" Category="Context" Description="Table that the object is based on." %>  
<%@ Map Name="CSharpAlias" Src="System-CSharpAlias" Description="System to C# Type Map" %>  
<%@ Assembly Name="SchemaExplorer" %>  
<%@ Import Namespace="SchemaExplorer" %> <%foreach( var tb in SourceData.Tables){ %>  [TableName("<%=tb.Name %>")]  <%foreach (var pk in tb.PrimaryKey.MemberColumns){ %>  [PrimaryKey("<%= pk.Name%>")]  <%} %>  [ExplicitColumns]  public partial class  <%=StringUtil.ToPascalCase(tb.Name) %> ()  {  <%foreach( var cl in tb.Columns) {%>    [Column]  public <%=CSharpAlias[cl.SystemType.FullName]%> <%=StringUtil.ToPascalCase(cl.Name) %> { get; set; }   <%} %>  } <%} %>

运行效果 

8、附录

CodeSmith下载地址:https://www.codesmithtools.com/downloads

CodeSmith官方文档:https://codesmith.atlassian.net/wiki/spaces/Generator/pages/529119/User+s+Guide

CodeSmith教程文档:https://www.w3cschool.cn/codesmith/

以上就是CodeSmith 简单使用和常用模板的介绍,做此记录,如有帮助,欢迎点赞关注收藏! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/9100.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蟑螂背上芯片板子,组队去救人类

丰色 发自 凹非寺量子位 | 公众号 QbitAI 一头大蟑螂&#xff0c;背上“大背包”&#xff0c;和几百只同伙一同出发&#xff0c;浩浩荡荡杀到一片废墟。 这这这……是要干啥&#xff1f; 去救人&#xff01; 它们的“背包”里有摄像头、有各种传感器&#xff0c;可以检测到废墟…

Python基于OpenCV监控老鼠蟑螂检测系统[完整源码&部署教程]

1.视频演示&#xff1a; [项目分享]Python基于OpenCV监控老鼠蟑螂检测系统[完整源码&#xff06;部署教程]_哔哩哔哩_bilibili 2.图片演示&#xff1a; 3.明厨亮灶&#xff1a; 餐饮企业的厨房卫生状况一直饱受消费者诟病&#xff0c;许多宾馆饭店大厅、包间富丽堂皇&#x…

国外科学家发明激光炮打蟑螂!AI自动识别,项目开源!

如果有一种生物&#xff0c;能让堂堂八尺猛男&#xff0c;吓得大惊失色&#xff0c;屁滚尿流。 除了北方“小强”&#xff0c;就是南方“大强”了&#xff01; 不光个大&#xff0c;还会飞&#xff01; 想想自己睡眼朦胧上个厕所&#xff0c;或者迷迷瞪瞪到厨房拿个夜宵&#x…

【运筹优化】CSO蟑螂算法求解无约束多元函数最值(Java代码实现)

文章目录 一、前言二、优化目标三、求解结果四、迭代结果可视化五、算法流程图六、Java代码实现6.1 算法部分代码6.2 可视化部分代码 一、前言 本文以求解二元函数最小值为例&#xff0c;如果需要求解多元函数&#xff0c;只需要修改以下变量即可&#xff1a; varNum&#xf…

基于OpenCV监控老鼠蟑螂检测系统[完整源码&部署教程]

1.视频演示&#xff1a; [项目分享]Python基于OpenCV监控老鼠蟑螂检测系统[完整源码&#xff06;部署教程]_哔哩哔哩_bilibili 2.图片演示&#xff1a; 3.算法原理&#xff1a; 该博客提出的移动侦测即是根据视频每帧或者几帧之间像素的差异&#xff0c;对差异值设置阈值&am…

蟑螂相关菌与人类健康风险

谷禾健康 说起蟑螂&#xff0c;大部分人都不太喜欢&#xff0c;甚至生理性恐惧... 你可能有100个讨厌它的理由&#xff0c;见到它就想消灭它&#xff0c;然而怎么都灭不完... 算起来&#xff0c;蟑螂早在3亿年前就已经存在了。蟑螂在线数据库中登记了4685种蟑螂&#xff08;截止…

群体智能优化算法之蟑螂算法((Cockroach Swarm Optimization,CSO)

获取更多资讯&#xff0c;赶快关注上面的公众号吧&#xff01; 文章目录 第十二章 蟑螂算法12.1 介绍12.2 聚集行为&#xff08;Chase-Swarming behavior&#xff09;12.3 分散行为&#xff08;Dispersing behavior&#xff09;12.4 残忍行为&#xff08;Ruthless behavior&…

李开复首谈ChatGPT:看好六大领域、三大投资机会

李开复表示&#xff0c;AI2.0的发展范式是迭代的&#xff0c;第一阶段是人机协同&#xff0c;第二阶段是局部自动&#xff0c;第三阶段是全程自动。 基于此&#xff0c;李开复提出&#xff0c;AI2.0将在六大领域加速点燃商业潜能&#xff0c;进入提升生产力的应用井喷期。 第一…

精选|商汤4月10号将发布大模型,3万字实录、腾讯研究院,真格基金chatgpt深度报告...

点击上方“Python与机器智能”&#xff0c;选择“星标”公众号 第一时间获取价值内容 一、商汤(4月10号将发布大模型)报告 这是由商汤(4月10号将发布大模型)一个半小时&#xff0c;近3万字的实录&#xff0c;解答关于人工智能&#xff0c;大模型的非常多关键问题&#xff0c;强…

企业如何稳定、安全使用ChatGPT?

随着人工智能技术的不断发展&#xff0c;商业模式正在发生颠覆。ChatGPT作为当下最热门的AI技术之一&#xff0c;已经在各行各业中广泛应用。 ChatGPT技术的应用可以使企业更高效、更智能地处理业务需求&#xff0c;大幅提升各类型工作任务的完成效率。 然而对于国内企业&#…

国内企业开发出类ChatGPT模型

最近&#xff0c;一款由国内高新技术企业开发的类ChatGPT模型问世&#xff0c;据悉该模型自主积累了40TB的数据集&#xff0c;还可以自动生成高达100G以上的优质语料&#xff0c;被称为“硅基知识大模型”。 该模型不仅具备了ChatGPT的功能&#xff0c;对数据的本地化的优化更好…

ChatGPT的快速发展究竟给我们带来了什么?

&#x1f61a;一个不甘平凡的普通人&#xff0c;致力于为Golang社区和算法学习做出贡献&#xff0c;期待您的关注和认可&#xff0c;陪您一起学习打卡&#xff01;&#xff01;&#xff01;&#x1f618;&#x1f618;&#x1f618; &#x1f917;专栏&#xff1a;算法学习 &am…

图观 | ChatGTP是如何通过知识图谱回答问题的?

文/Emma Z 1950年&#xff0c;图灵发表了具有里程碑意义的论文《计算机器与智能》&#xff08;Computing Machinery and Intelligence&#xff09;&#xff0c;提出了一个关于机器人的著名判断原则——图灵测试&#xff0c;也被称为图灵判断&#xff0c;它指出如果第三者无法辨…

Java程序员摸鱼技巧,推荐这9个 !

小编给大家推荐几个优质的公众号 他们都是各领域的资深主理人 他们的每一个公众号都值得你关注 简说Python RECOMMEND 推荐理由&#xff1a; 关注「简说Python」遇见老表&#xff0c;AI与数据分析的探索者&#xff01;Python学习路上的伙伴&#xff0c;原创文章超200篇。涵盖P…

LLM探索:环境搭建与模型本地部署

1前言 最近一直在炼丹&#xff08;搞AIGC这块&#xff09;&#xff0c;突然发现业务代码都索然无味了… 上次发了篇AI画图的文章&#xff0c;ChatGPT虽然没法自己部署&#xff0c;但现在开源的LLM还是不少的&#xff0c;只要有一块差不多的显卡&#xff0c;要搞个LLM本地部署还…

超越诺奖?生物界「ChatGPT」首次实现从零合成全新蛋白,登Nature子刊!喂了2.8亿种氨基酸序列...

新智元报道 编辑&#xff1a;好困 Aeneas 【新智元导读】这家成立三年的小初创公司&#xff0c;首次利用深度学习语言模型合成出了自然界中不存在的全新蛋白质&#xff0c;引爆蛋白质设计革命。 人工智能的应用&#xff0c;已经极大地加速了蛋白质工程的研究。 最近&#xff…

【R】Mac如何配置R和RStudio

前言 本篇文章将讲述如何在Mac上配置R和RStudio&#xff0c;惯例是先看看chatgpt会怎么回答这个问题&#xff1a; miniconda配置R和RStudio&#xff08; Mac m系列芯片暂不适用&#xff09; 安装R 在终端中执行一下命令 conda search -c conda-forge r-base # 备注-c conda…

深度学习实战26-(Pytorch)搭建TextCNN实现多标签文本分类的任务

大家好,我是微学AI,今天给大家介绍一下深度学习实战26-(Pytorch)搭建TextCNN实现多标签文本分类的任务,TextCNN是一种用于文本分类的深度学习模型,它基于卷积神经网络(Convolutional Neural Networks, CNN)实现。TextCNN的主要思想是使用卷积操作从文本中提取有用的特征,并…

写在2023年年中

写在2023年年中 收拾旧山河再出发 很久没有写规划了&#xff0c;博客也很少写&#xff0c;着实是太懒了。想想自己年纪也不小了&#xff0c;加上程序员的环境越来越不好&#xff0c;总得想想自己的出路不是。 目标 提升系统设计能力保持算法刷题能力(一般面试需要)知识输出能…

英语学习-29190410雅思图表作文写作--bar grapgh

主要参考来源&#xff1a;https://www.bilibili.com/video/av23014883?p2 Simon雅思 搜狐 http://www.sohu.com/a/130635097_372408 注意事项 开头语不能照抄题干中的句子&#xff0c;阅卷老师不会评估照抄的句子&#xff0c;所以你抄上去只是在浪费时间 请注意时态&…