> 데이터 베이스 > MySQL 튜토리얼 > CodeSmith实用技巧(十):通过编程执行模版

CodeSmith实用技巧(十):通过编程执行模版

WBOY
풀어 주다: 2016-06-07 15:10:56
원래의
1453명이 탐색했습니다.

CodeSmith 在执行模版时通过调用一些 API 来完成的,主要经过了以下这几步的操作: l 编译一个模版 l 显示编译错误信息 l 创建一个新的模版实例 l 用元数据填充模版 l 输出结果 下面这段代码显示了这些操作: CodeTemplateCompilercompiler = new CodeTempla

CodeSmith在执行模版时通过调用一些API来完成的,主要经过了以下这几步的操作:

l         编译一个模版

l         显示编译错误信息

l         创建一个新的模版实例

l         用元数据填充模版

l         输出结果

下面这段代码显示了这些操作:

CodeSmith实用技巧(十):通过编程执行模版CodeTemplateCompiler compiler = new CodeTemplateCompiler("..\\..\\StoredProcedures.cst");
CodeSmith实用技巧(十):通过编程执行模版compiler.Compile();
CodeSmith实用技巧(十):通过编程执行模版 
CodeSmith实用技巧(十):通过编程执行模版
if (compiler.Errors.Count == 0)
CodeSmith实用技巧(十):通过编程执行模版CodeSmith实用技巧(十):通过编程执行模版
CodeSmith实用技巧(十):通过编程执行模版{
CodeSmith实用技巧(十):通过编程执行模版    CodeTemplate template 
= compiler.CreateInstance();
CodeSmith实用技巧(十):通过编程执行模版 
CodeSmith实用技巧(十):通过编程执行模版    DatabaseSchema database 
= new DatabaseSchema(new SqlSchemaProvider(), @"Server=(local)\NetSDK;Database=Northwind;Integrated Security=true;");
CodeSmith实用技巧(十):通过编程执行模版    TableSchema table 
= database.Tables["Customers"];
CodeSmith实用技巧(十):通过编程执行模版 
CodeSmith实用技巧(十):通过编程执行模版    template.SetProperty(
"SourceTable", table);
CodeSmith实用技巧(十):通过编程执行模版    template.SetProperty(
"IncludeDrop"false);
CodeSmith实用技巧(十):通过编程执行模版    template.SetProperty(
"InsertPrefix""Insert");
CodeSmith实用技巧(十):通过编程执行模版 
CodeSmith实用技巧(十):通过编程执行模版    template.Render(Console.Out);
CodeSmith实用技巧(十):通过编程执行模版}

CodeSmith实用技巧(十):通过编程执行模版
else
CodeSmith实用技巧(十):通过编程执行模版CodeSmith实用技巧(十):通过编程执行模版
CodeSmith实用技巧(十):通过编程执行模版{
CodeSmith实用技巧(十):通过编程执行模版    
for (int i = 0; i  compiler.Errors.Count; i++)
CodeSmith实用技巧(十):通过编程执行模版CodeSmith实用技巧(十):通过编程执行模版    
CodeSmith实用技巧(十):通过编程执行模版{
CodeSmith实用技巧(十):通过编程执行模版        Console.Error.WriteLine(compiler.Errors[i].ToString());
CodeSmith实用技巧(十):通过编程执行模版    }

CodeSmith实用技巧(十):通过编程执行模版}

CodeSmith实用技巧(十):通过编程执行模版
CodeSmith实用技巧(十):通过编程执行模版

在这里我们用了

Render方法,其实CodeTemplate.RenderToFileCodeTemplate.RenderToString方法可能更有用,它可以直接让结果输出到文件中或赋给字符型的变量。

注意:该功能只能在CodeSmith专业版中使用
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿