由于项目需要编写很多重复的代码和Model实体类,所有使用代码生成器的模板功能生成csla项目的实体和DAL。

  按照它里面的模板使用方法, 简单的分析一下

View Code
 <# foreach (ColumnInfo c in host.Keys) { if ("uniqueidentifier" == c.TypeName.ToLower()) {#>            
LoadProperty<<#=CodeCommon.DbTypeToCS(c.TypeName) #>>(obj, <#= host.TableName #>.<#=c.ColumnName #>Property,Guid.NewGuid());
<# }#> <#}#>

  <# #>之间是一个语句块,和后面的所有的<# #>相关联的语句结合后编译,其实我就是相当于将这些<# #>的语句重新组合成C#语法进行编译和操作,

如ColumnInfo c 在后面的<# #>也会用到,里面的if条件句,也需要{},可以看到里面的组合<#}#>这样拼接起来的。

  在里面写成的模板需要注意就是几个地方,一个是表的主键,模板的右键“保存”,写完模板后一定要记得保存,不然工作就白费了。

  有动软代码生成器提供很大的方便,如果有需要自己做模板的一定需要看开发者李天平的帮助文档,非常感谢这些牛人,地址在http://www.maticsoft.com/help/Template.htm,里面有作者定义的帮助方法和使用方法,说的很详细,大家按照上面的说明和动软自带的已有的模板,自定义模板就差不多多少了。

以下是自己做的csla框架中适应的自定义模板,需要添加csla框架的dll,博客园里面有很多大牛在研究csla框架。

csla中的两个Model,一个是cslaModel文件,一个是list集合的calsModelList,两个data文件,一个是cslaData,一个是list集合的cslaDataList

大家主要是要自己定义模板才能明白其中的意义。

模板下载地址:https://files.cnblogs.com/huangyuanfengxue/cslaTemplate.rar