zoukankan      html  css  js  c++  java
  • codesmith引用多个模板生成代码

    <%--
    Name:
    Author:
    Description:
    --%>
    <%@ CodeTemplate Language="C#" TargetLanguage="Text" Src="" Inherits="" Debug="False" CompilerVersion="v3.5" Description="Template description here." %>
    <%@ Register Name="EntityTemplate" Template="entity.cst" %>
    <%@ Register Name="DAOTemplate" Template="dao.cst" %>
    <%@ Register Name="BOTemplate" Template="bo.cst" %>
    <%@ Property Name="Namespace" Type="System.String" Default="Beyondbit.App" Optional="True" Category="Strings" Description="This is a sample string property." %>
    <%@ Assembly Name="SchemaExplorer" %>
    <%@ Property Name="SourceTables" Type="SchemaExplorer.TableSchemaCollection" Optional="False" Category="Required"%>

    <%--= SampleStringProperty --%>
    <% Start(); %>


    <script runat="template">

    public void GenerateEntity(SchemaExplorer.TableSchema table, EntityTemplate template) {
    template.SourceTable = table;
    template.NameSpace = Namespace + ".Entity";
    template.RenderToFile(".\\" + template.NameSpace + "\\" + table.Name + ".cs", true);
    }

    public void GenerateDAO(SchemaExplorer.TableSchema table, DAOTemplate template) {
    template.SourceTable = table;
    template.NameSpace = Namespace + ".DAO";
    template.RenderToFile(".\\" + template.NameSpace + "\\DAO" + table.Name + ".cs", true);
    }

    public void GenerateBO(SchemaExplorer.TableSchema table, BOTemplate template) {
    template.SourceTable = table;
    template.NameSpace = Namespace + ".BO";
    template.RenderToFile(".\\" + template.NameSpace + "\\BO" + table.Name + ".cs", true);
    }

    public void Start() {
    EntityTemplate tmpEntity = this.Create<EntityTemplate>();
    DAOTemplate tmpDAO = this.Create<DAOTemplate>();
    BOTemplate tmpBO = this.Create<BOTemplate>();
    foreach (SchemaExplorer.TableSchema t in SourceTables){
    GenerateEntity(t, tmpEntity);
    GenerateDAO(t, tmpDAO);
    GenerateBO(t, tmpBO);
    }
    }
    </script>

  • 相关阅读:
    Oracle GoldenGate
    net core 2.0 web api + Identity Server 4 + angular 5
    NET Core Web API下事件驱动型架构CQRS架构中聚合与聚合根的实现
    Angular 5项目
    Scala语言
    jQuery 仿百度输入标签插件
    vs2010 mvc3安装时报错
    快递查询SDK
    天气查询SDK
    OAthe2 Login use OkHttpClient and OAuth2RestTemplate
  • 原文地址:https://www.cnblogs.com/yuanxiaoping_21cn_com/p/2808049.html
Copyright © 2011-2022 走看看