用CodeSmith生成.net三层中的Modul实体类

CodeSmith是一个非常强大的代码生成工具,本文只介绍怎么生成.net三层中Modul实体类而不涉及CodeSmith的语法部分说明,感兴趣的可以自己在网上查找写关于CodeSmith的用法。

首先来几张截图:

1.打开CodeSmith Generator Studio新建一个数据库连接本文用的MS sql数据库作为测试

用CodeSmith生成.net三层中的Modul实体类

 

用CodeSmith生成.net三层中的Modul实体类

 

用CodeSmith生成.net三层中的Modul实体类

 

用CodeSmith生成.net三层中的Modul实体类

 

2.新建一个C#模板文件名称自定义(本文名称为Modul-net2.0)然后将下面的代码copy到文件中

<%@ CodeTemplate Language="C#" TargetLanguage="C#" ResponseEncoding="UTF-8" Debug="False" Description="生成数据库实体" %>

<%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="属性" Description="要生成实体的数据表" %>

<%@ Property Name="NameSpace" Type="System.String" Optional="False" Default="Modul" Category="属性" Description="实体类所在的命名空间" %>

<%@ Property Name="opuser" Type="System.String" Default="wlitsoft" Optional="False" Category="属性" Description="请输入您的名字" %>

<%@ Map Name="CSharpAlias" Src="System-CSharpAlias" Description="System to C# Type Map" %>

<%@ Assembly Name="SchemaExplorer" %>

<%@ Import Namespace="SchemaExplorer" %>

/*

*本代码由代码生成器自动生成,请不要更改此文件的任何代码。

*生成时间:<%= DateTime.Now.ToLocalTime() %>

*生成者:<%= opuser %>

*/

using System;

namespace <%= this.NameSpace %>

{

    ///<summary>

    ///<%= this.SourceTable.Name %>的实体类

    ///</summary>

    public class <%= this.SourceTable.Name %>

    {

        <%--生成私有字段.net2.0--%>

        <% foreach (ColumnSchema column in this.SourceTable.Columns) {  %>

        private <%= CSharpAlias[column.SystemType.FullName] %> <%= StringUtil.ToCamelCase(column.Name) %>;

        <% } %>

    

        <% foreach(ColumnSchema column in this.SourceTable.Columns){%>    

         <%--生成get set 方法--%>

        /// <summary>

        /// <%= column.Description %>

        /// </summary>

        public <%= CSharpAlias[column.SystemType.FullName] %> <%= StringUtil.ToPascalCase(column.Name) %>

        {

            get { return <%= StringUtil.ToCamelCase(column.Name) %>; }

            set { <%= StringUtil.ToCamelCase(column.Name) %> = value; }

        }

        <%}%>

        

    }

}

 

3.打开CodeSmith Generator Explorer会看到如下

 

 用CodeSmith生成.net三层中的Modul实体类

 

用CodeSmith生成.net三层中的Modul实体类

 

用CodeSmith生成.net三层中的Modul实体类

你可能感兴趣的:(.net)