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>

  • 相关阅读:
    构造方法
    构造方法的重载
    封装的使用及演示代码
    static的用法及作用
    javaWeb链接数据库进行增删改查
    java面向对象接口小结
    多线程总结
    mysql数据查询
    mysql条件查询
    mysql查询数据
  • 原文地址:https://www.cnblogs.com/yuanxiaoping_21cn_com/p/2808049.html
Copyright © 2011-2022 走看看