在【codesmith快速入門之一:初次接觸codesmith】中,我們實現了最簡單的模板,但是模板中的內容無法由使用者的輸入決定。
假定你女朋友要你在新年的時候說10次「i love you」,而在情節人那天要你說1000次「i love you for ever」,這可怎麼辦呢?
我們經過分析,其實就是次數和說的內容不確定。
那麼我們馬上著手開始實現吧。
1、新建c#模板,去掉原始內容並儲存取名為「love.cst」
(操作同【codesmith快速入門之一:初次接觸codesmith】一致)
2、新增模板宣告
@ codetemplate language
= "
c#" responseencoding="utf-8"
description
= "
愛情表達
" %>
3、為了可以接收外部傳進來的「次數」和「內容」,定義兩個輸入引數
@ codetemplate language
= "
c#" responseencoding="utf-8"
description
= "
愛情表達
" %>
@ property
name
= "
content
" type
= "
string
" default
= ""
optional
= "
false
" category
= "
context
" description
= "
要講的話
"
%>
@ property
name
= "
count
" type
= "
int32
" default
= "
10" optional
= "
true
" category
= "
context
" description
= "
講的次數
"
%>
property的屬性:
--name:名稱
--type:資料型別
--category:屬性分類名稱
--default:預設值
--description:描述
--optional:是否允許為空(true或者false)
注意:兩個引數的名稱分別為:content和count,我們可以像使用變數一樣使用
4、為了重用,在模板中定義乙個方法
<
script
runat
="template"
>
public
void
say()}
指令碼標籤中可以包含一段**,但是它們不直接影響輸出的模板,我們可以在裡面存放一些常用的方法
5、在模板中呼叫方法
@ codetemplate language
= "
c#" responseencoding="utf-8"
description
= "
愛情表達
" %>
@ property
name
= "
content
" type
= "
string
" default
= ""
optional
= "
false
" category
= "
context
" description
= "
要講的話
"
%>
@ property
name
= "
count
" type
= "
int32
" default
= "
10" optional
= "
true
" category
= "
context
" description
= "
講的次數
"
%>
您說的內容如下:
say(); // 呼叫say方法
%>
<
script
runat
="template"
>
public
void
say()}
**標籤:
6、執行模板,但是發現報出錯誤
content is required:要講的內容不能為空。原來我們把content引數的optional設定為了false,content必須輸入值。
9、在屬性視窗中輸入值【i love you】並重新執行
注:count中有預設值10,說明default為10產生作用。
最後結果為:
您說的內容如下:
i love you
i love you
i love you
i love you
i love you
i love you
i love you
i love you
i love you
i love you
呵呵,怎麼樣,效果出來了吧。下次我將會為大家講解對資料庫中資訊的訪問,謝謝!
引數方法和非引數方法
機器學習上的方法分為引數方法 根據先驗知識假定模型服從某種分布,然後利用訓練集估計出模型引數,也就弄清楚了整個模型,例如感知器 和非引數方法 基於記憶訓練集,然後根據訓練集 例如knn 引數方法根據先驗知識假定模型服從某種分布,然後利用訓練集估計出模型引數,也就弄清楚了整個模型。那麼,估計模型引數到...
帶引數方法和不帶引數方法
方法分為帶引數不帶引數兩種 a不帶引數 public void showinfo b帶引數方法 public void showinfo intname,string str 結論 1方法定義處,引數叫形式引數,也叫形參 主要用來約束引數型別的 形參的名字可以隨便取,但要符合駝峰命名規則,同時要有意...
輸入引數varargin
一種特別的輸入引數varargin 可以在自定義函式中得到,這種函式支援輸入引數的變數的個數。這個引數顯在輸入引數列表的最後一項,它返回乙個單元陣列,所以乙個輸入實參可以包括任意數目的實參。每乙個實參都變成了由varagin 返回的單元陣列元素。如果它被應用,varagin 必須是函式中的最後乙個輸...