|
Hello World
创建好一个模板后第一步要指明这是一个C#语言的模板。
<%@ CodeTemplate
Language="C#" ClassName="Test" TargetLanguage="C#"
Description="Generates a class
including a special informational header" %>
第二步,我们要指明模板在生成代码时的属性,即生成代码需要的输入值变量。
<%@ Property
Name="NameSpace" Type="String"
Category="Context"
Description="The namespace
to use for this class" %>
如上边所示,在进行代码生成时,在SpDevelop中选择模板后生成代码的窗口中,变量的名称为NameSpace,类型是String,类别是Context,当用户选中这个属性时对于属性的描述Description。
我们可以按照C#语言的语法去使用定义的变量,例如:
///////////////////////////////////////////////////////////////////////////////////////
// File: <%=ClassName%>.cs
例如下面这个例子模板使用了上面介绍的知识。Test.cst
<%@ CodeTemplate
Language="C#" ClassName="Test" TargetLanguage="C#"
Description="Generates a class
including a special informational header" %>
<%@ Property
Name="NameSpace" Type="String"
Category="Context"
Description="The namespace
to use for this class" %>
<%@ Property
Name="ClassName" Type="String"
Category="Context"
Description="The name of the
class to generate" %>
<%@ Property
Name="DevelopersName" Type="String"
Category="Context"
Description="The name to include
in the comment header" %>
///////////////////////////////////////////////////////////////////////////////////////
// File: <%=ClassName%>.cs
// Description:
Enter summary here after generation.
// ---------------------
// Copyright
© <%= DateTime.Now.Year %> Our Client
// ---------------------
// History
// <%=
DateTime.Now.ToShortDateString() %> <%= DevelopersName%>
Original Version
///////////////////////////////////////////////////////////////////////////////////////
using System;
namespace
<%=NameSpace
%>
{
///
<summary>
///
Summary description for <%=ClassName %>.
///
</summary>
public class
<%=ClassName
%>
{
public <%=ClassName
%>()
{
//
// TODO: Add constructor logic here
//
}
}
}
具体操作说明:
1、打开SpDevelop,新建一个Template项目,命令为HelloWorld。
2、将上面的Test.cst的内容拷贝到main.cst中
3、在解决方案中,右击"HelloWorld"项目,依次执行"编译"和"生成"操作
4、在生成后,工作区中将自动打开生成的窗体.
先在左边的树型菜单中选中您要生成的模版(例如1),填入要生成的目标属性(比如2),
接着填写生成的目标输出路径,点击生成即可看见生成的结果
1///////////////////////////////////////////////////////////////////////////////////////
2// File: MyClass.cs
3// Description: Enter summary
here after generation.
4// ---------------------
5// Copyright © 2003 Our Client
6// ---------------------
7// History
8// 12/2/2003
Mr. Smith Original Version
9///////////////////////////////////////////////////////////////////////////////////////
10
11using System;
12
13namespace MyNameSpace
14{
15
///
<summary>
16
///
Summary description for MyClass.
17
///
</summary>
18 public
class MyClass
19
{
20
public MyClass()
21
{
22
//
23
// TODO: Add constructor
logic here
24
//
25 }
26
}
27}
生成后的代码即可放入Visual Studio .NET中使用,我们使用SpDevelop的目的就是为了快速高效的开发。
|