鍍金池/ 教程/ C++/ 引用其它文件或 .Net 類庫
使用主從代碼模板
CodeTemplateInfo 對象
引用其它文件或 .Net 類庫
編寫第一個代碼模板
Progress 對象
基本語法-使用注釋
基本語法-轉(zhuǎn)義Asp.Net標記
調(diào)試
為 Yii Framework 創(chuàng)建生成 ActiveRecord 的代碼模板
基本語法-聲明和使用屬性
自動生成Yii Framework ActiveRecord類簡單模板
Merge 策略
使用 XMLProperty
CodeTemplate 對象
基本語法-CodeTemplate 指令
概述
使用 SchemaExplorer 來獲取數(shù)據(jù)庫定義

引用其它文件或 .Net 類庫

在 CodeSmith 模板中可以引用 .Net 類庫,和普通的 .Net 項目不同的是,對 .Net 庫的引用不是通過項目的 Add reference 來實現(xiàn),而是通過在代碼模板中指明所要引用的 Assembly.

比如引用 CodeSmith 自帶的 CodeSmith.CustomProperties.dll ,可以使用如下語句:

<%@ Assembly Name="CodeSmith.CustomProperties" %>
  • Name指明所有需要引用的 Assembly 的名稱,也可以使用 Assembly 的全名,比如ExampleAssembly, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
  • Src 指明可以動態(tài)編譯的源碼的相對路徑名稱
  • Path 指明應用的 Assembly 存放的路徑

引用合適的 Assembly 之后,和普遍 C# 語言類似,對于使用到的 .Net 類,需要通過 Import 引入該類所在的命名空間。

比如 CodeSmith 使用教程(9): Progress對象引入 Thread 類所在的 System.Threading

<%@ Import Namespace="System.Threading" %>

此外,如果在代碼模板中需要引入一些源代碼 (比如一些公用的代碼)可以通過 include ,比如:

<!– #include file="CommonScript.cs" –>

共享代碼的方法除了上面使用的 include 方法外,還可以通過設(shè)置 CodeTemplateAssembly 的Src 屬性來實現(xiàn)等。