代码生成利器-NCodeGenerate 教程(2) NCodeGenerate的代码公用之一
NCodeGenerate 使用起来非常方便。
在使用过程中,我们经常会有些公用的代码在不同的模板中使用。如果没有扩展机制的话,代码需要在各个模板间拷贝,这显然太低级了。
对了,你猜的没错,NCodeGenerate有良好的公用机制的。总共有两种:
一、C#代码扩展。
二、程序集扩展。
今天我们就讲第一种,C#代码扩展。
第一步,在菜单中新建C#文件,并输入以下代码
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using NCodeGenerate.DBSchema;
6 using System.Data;
7 using System.Text.RegularExpressions;
8
9 public static class ConvertHelper1
10 {
11
12
13 public static string TestA(string bb)
14 {
15 return bb;
16 }
17 public static string TestA(string bb,string cc)
18 {
19 return bb+cc;
20 }
21 }
好了,要保存以下,注意哦,一定要先保存一下,否则下一步引用的时候会找不到路径的。
第二步,新建模板文件,输入以下代码
1 @AssemblyFile .\ConvertHelper1.cs
2 <h1>Welcome to @Model.Namespace!</h1>
3 <div>Start typing some text to get started.</div>
4 <div>Or, try adding a property called 'Message' and see what happens...</div>
5 @ConvertHelper1.TestA("Hello"," NCodeGenerate")
6 <h3></h3>
好了,高潮来了。 看第1行代码 : 这里用 @AssemblyFile 指令来引入一步产生的CS文件。 后面是 文件的相对路径。 注意哦,只能是相对路径,不能使绝对路径。
好吧,现在我们看第5行代码。在输入@ConvertHelp1.后看到了什么?有智能提示吗?什么没有?!。什么地方搞错了?
找到原因了,有由于模板文件没有保存。虽有就没有路径。当然引入文件就不会成功。
现在保存一下,在试一试。

OK,智能提示出来了。
第三步,运行
结果出来了
1 <h1>Welcome to !</h1> 2 <div>Start typing some text to get started.</div> 3 <div>Or, try adding a property called 'Message' and see what happens...</div> 4 Hello NCodeGenerate 5 <h3></h3>
大功告成。
附上下载地址:
文档:文档
NCodeGenerate 系列文章:

浙公网安备 33010602011771号