CodeSmith应用实例(一)

一、一个简单的例子
 
       这个例子仅是一个简单的应用,在我翻译并学习完CodeSmith的英文帮助文档后,对CodeSmith有了一定的了解,开始着手编写一些CodeSmith应用模板,今天按照最早提到的例子自行编写了一个基于表的添加存储过程的生成模板。具体语法前面基础中已做过详细解释这里仅是一个小综合应用的例子,望对大家学习CodeSmith有很好的帮助。我的同事也写了几个CodeSmith的技巧的文章 http://terrylee.cnblogs.com/ 大家有空去看看,写的很不错哦,都是针对于CodeSmith自定义属性编写的东东:)
 1 < %@ CodeTemplate  Language ="C#"  TargetLanguage ="T-SQL"  Description ="Create a procedure which have insert function base on a table."  % >
 2 < %@ Assembly  Name ="SchemaExplorer"  % >
 3 < %@ Import  Namespace ="SchemaExplorer"  % >
 4 < %@ Property  Name ="SourceTable"  Type ="SchemaExplorer.TableSchema"  Category ="DataTable"  Description ="Table that the stored procedures should be based on."  % >
 5 < %@ Property  Name ="Author"  Type ="String"  Category ="Context"  Description ="The author for this procedure." % >
 6 < %@ Property  Name ="Description"  Type ="String"  Category ="Context"  Description ="The description for this procedure." % >
 7 < script  runat ="template" >
 8 public string GetSqlParameterStatement(ColumnSchema column)
 9 {
10     string param = "@" + column.Name + " " + column.NativeType;
11     switch (column.DataType)
12     {
13         case DbType.Decimal:
14         {
15             param += "(" + column.Precision + ", " + column.Scale + ")";
16             break;
17         }
18         default:
19         {
20             if (column.Size > 0)
21             {
22                 param += "(" + column.Size + ")";
23             }
24             break;
25         }
26     }
27     return param;
28 }
29 </ script >
30 CREATE PROCEDURE dbo. < %=SourceTable .Name % > Insert
31 /*
32 ==================================================
33
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值