CodeSmith的使用

  CodeSmith是一款优秀的代码生成工具。在ORM中,它能帮助我们生成实体类、XML配置文件,从而简化了我们一部分的开发工作。下面简要说说它的基本用法。

  背景概述:下面示例用的是SQLServer2005Express数据库。另外:还需生成实体类所需的NHibernate.cst等文件,下载地址为(https://files.cnblogs.com/abluedog/nhibernate_template.rar)。

  步骤如下:

  1.开启CodeSmith后,打开Schema Explorer(架构浏览器窗口)。如下图:

    

  注:若初次使用本软件,则默认有一个PetShop数据库。上图所显示的则是我新建的名称Test的示例。(Test是我自己在使用CodeSmith时命名的,而非要映射到的实际数据库名。)

  2.将生成实体类所需的cst文件添加进来到Template Explorer中。操作如下:点击下图中打开的文件夹【鼠标放上去的提示”Create Template folder Shortcut“】,将模板文件添加进来。如下图:

  

  3.点击上图中右侧图标(Manage Data Sources)打开Data Source Manager.如下图:

  

  4.点击“Add”按钮,增加新数据库。出现如下图所示的Data Source窗口:

  

  5.  填写Name、Provirder Type 、Connection String。填写的Name就如同上面第一个图中显示的DataBase中Test,Provirder Type为数据库的类型。连接字符串也可以点击右侧的“...”按钮进行配置。配置界面如下:

  

本例为SqlServer2005.填写完后如下图:

  

  用户也可以点击“Test”按钮进行测试填其正确性。

  6.右击Template Explorer(模板浏览器),下的nhibernate_template中的nhibernate.cst文件,选择Excute出现下图窗口:

    

Class下的OutputDerectory:即生成的实体类的路径,SourceDatabase即上面填写的Name、Provier Type 、Connection String 中的Name。Assembly即生成文件的默认程序集名称。NameSpace即为实体类的命名空间。另外:ForceId默认为True就行(如果表中的ID为主键)。它的作用是强制NHibernateSample所表示的数据库的所有表需要有主键(是否是自增我没有测试过)。RemoveTablePrefix,看意思即是一处表的前缀,这里我把它删除了。它更具体的作用我没有深入研究。

  7.点击下面“Genrate”按钮,即是制定的目录下生成了实体类(本例为D:\CodeSmith)。

  8.若你是使用NHibernate作为你ORM的选择,你还需在生成的实体类前加上virtrue,否则程序会报错。

大体过程就这些。也比较简单。希望对初次使用的朋友有所用。另外,有些图不是很会截取,所以图片不太完整(比如若右击Nhibernate.cst显示的菜单的图),不过我能截的我都尽力截了。大家就凑合着看看吧!相信你们的悟性比我要高。哈哈!

posted @ 2010-09-05 21:27  tyb1222  阅读(4068)  评论(1编辑  收藏  举报