本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html
Newlife XCode组件相关文章目录:http://www.cnblogs.com/asxinyu/p/4329747.html
1 namespace <#=Data["NameSpace"]#>
2 {
3 public class <#=Data["ClassName"]#>:WMIBase
4 {
5 #region 字段定义
6 <# foreach(KeyValuePair<string,object> item in Data)
7 {if((!item.Key.Contains("NameSpace"))||(!item.Key.Contains("ClassName")))
8 {#>
9 private <#=item.Value#> _<#=item.Key.ToLower()#> ;
10 <#}
11 }#>
12 private ManagementObject _mo;
13 #endregion
2 {
3 public class <#=Data["ClassName"]#>:WMIBase
4 {
5 #region 字段定义
6 <# foreach(KeyValuePair<string,object> item in Data)
7 {if((!item.Key.Contains("NameSpace"))||(!item.Key.Contains("ClassName")))
8 {#>
9 private <#=item.Value#> _<#=item.Key.ToLower()#> ;
10 <#}
11 }#>
12 private ManagementObject _mo;
13 #endregion
上述代码生成的就是字段定义,可以对比上一篇博客中生成的代码,就是循环拼接的过程。
当然模板引擎还有一个强大的功能,那就是调试,可以发现一些潜在的错误,使得更容易发现和修改错误。为了说明上面那段代码,我准备了一张说明的图,嘿嘿,理解不了,就多动手做一些简单的,就知道了,熟能生巧吗。先看模板说明和生产代码说明对比:
看看对应生成的代码
至于传入的数据已经在上一篇拥有自己的代码生成器—NewLife.XCode代码生成器分析中提到了,过程应该比较清楚吧。有什么问题,可以提出来,大家交流交流。
新生命开发团队的相关信息,QQ群:1600800
博客:http://nnhy.cnblogs.com
论坛:http://www.53wb.com
博客:http://nnhy.cnblogs.com
论坛:http://www.53wb.com