CodeSmith入门(例:在15分钟之内建立数据访问层-DAL-NetTiers)

[c#]15分钟之内建立数据访问层 翻译

 

适用 asp.net 1.1 2.0 (选择模板.)

 

使用工具: .NetTiers templates

          CodeSmith

在这篇文章里,你将学会如何通过CodeSmith.NetTiers模板库,建立基于微软的企业库的数据访问层

 

数据访问层(以下使用DAL),是封装了应用程序中所有与数据库交互的功能.这种典型性代码如果需要手工编写,不并需.net的专业知识,还需要数据访问方面的知识. 为一个应用程序写一个DAL层是一件单调、费时、重复并且还可能产生错误重重的代码的事。

 

这篇文章我们使用SQL Server中的Northwind样例数据库,而且,这个数据库在普遍存在。当然这让你写程序的DAL层不在单调与费时,变得快速,简单,容易。

 

如果你跟着这篇文章做,到最后你将能在一分钟内完成建立DAL(第一次的其它14分钟是用来下载软件)[老外还幽默呢]

 

代码自动生成概要

 

代码生成不是一新的概念,是采用一个软件工具生成代码。事实上,代码自动生成概念由来已久了,在这篇文章中,我将使用CodeSmith这个工具生成DAL的代码及SQL语句脚本。

 

CodeSmith是一个开发者使用的工具,它能让开发者使用模板的格式生成期望的代码。这就的CodeSmith的优点,软件开发人员通过模板仍然保留对代码产生的控制。模板提供一个机会给人们产生新代码,代码重用,以及生成库,例如在这篇文章提到的NetTiers模板。

 

准备工作

是下载所需的工具及模板,CodeSmith是一个商业的开发人员工具,但它有一个30天的试用版,我们可以用这个一版本。CodeSmith自带了许多内建的模板,下一个服务包将包含NetTiers 的模板

 

   http://www.codesmithtools.com/

 

   下载 .NetTiers

   http://www.nettiers.com

 

.NetTiers 站点左列上点击"Latest Download"链接,在转到的页面上,下载最新的 MSI格式的安装包。

 

最后一步,确认你是否安装SQL数据库,以及这个数据库正确可用的连接字符串

 

步骤2

下载安装完CodeSmith后,你可以通过开始菜单里的CodeSmith Studio打开CodeSmith.在使用NetTiers模板之前,你应先熟悉一下CodeSmith.

 

跟介绍里提到的一样,CodeSmith是一个以模板驱动的代码产生工具,在程序窗口的右边一个一个模板资源管理器,它提供一个快速访问已经安装或者写好模板的方式。

 

为了解释CodeSmith其它的功能操作,我们需要一个模板,通过模板资源管理器双击Hashtable.cst,就可打开Hashtable.cst模板。

Hashtable.cst 是一个CodeSmith里的一个重要模板,用来产生哈希表的基本数据类型的强类型集,在我们介绍这个模板前,我们再来快速看一下CodeSmith另一个属性窗口。

 

这个属性窗口允许你设置模板里的属性。当你使用Hashtable.cst模板时,我们需要设置一些公共的元素如类名,ItemType,KeyType,举一个例子,如果你想创建Person这个对象的强类型集,并能通过整形类该问一个类名为PersonCollection,那么你就应将类名定义为PersonCollection,ItemTypePersonKeyTypeInt. 你可以产生这个强类型集通过单击CodeSmith上的RUN按钮(在工具条上可以找到)

 

如果你发一点时间看了一下Hashtable.cst文件,你可能会说" 这看起来像 asp.net". 你说对了,CodeSmith的模板是仿造asp.net的页面,按照其相仿的想法做的。然而,ASP.NET 用来产生HTML页面,CodeSmith用来产生源文件或其它文本文件。

 

 

更重要的事要记住,CodeSmith不会限制你的创造力,因为你是通过控制模板来驱动代码的产生.

 

步骤3

 

好了,我们对CodeSmith有一个基本的了解,我们来看一下NetTiers模板。

记住,CodeSmith的宗旨是让你更快,更少错误地写代码。 NetTiers模板让你一步快速地创建一个DAL层。

 

首先我们需将NetTiers加入到CodeSmith模板资源管理器中。

 1. 在模板资源管理器中点击浏览图标,选择包含模板的目录

 

 2.  NetTiers的安装目录下,在我的电脑是C:/Program Files/SerialCoder/NetTiers 0.9.2 /

 

 3. 当这个目录在模板资源管理器管理器中建立快捷方式,展开它,选中NetTiers.cst,双击它。

 

 4. 现在 NetTiers模板已经安装,你需配置数据源,打开属性窗口,通过点击带省略号的按钮,来配置数据源。

  

 5. 它将打开数据库拾取器,我们将建立一个新数据源,因此点击省略号按钮来打开数据源管理器。下图显示出数据源管理器样例。

 

 6.测试连接,确保其有效。 点击OK后,关闭这个对话框,确定新的数据源已经选取定。

 

  最后,设置EntireDatabase属性值为 true,

        设置 NameSpace 属性值为 Demo

        设置 OutputDirectory 属性值为输出源代码的存放目录,如果目录不存在,则手工创建一个目录。

       

当你完成以上步骤后,NetTiers.cst的属性窗口如下所示:

 

  对于NetTiersCodeSmith其它功能就不多讲了,这些动作足够让我们产生一个数据访问层,点击CodeSmith工具栏上的RUN按钮后,就可产生DAL层的代码了。

 

步骤4,查看产生的代码

打开Visual Studio .NET,在刚才设置的目录下打开Demo.sln文件

 

 

你会发现在解决方案里有三个项目,

  Demo                  - 主库,包含 应用程序与数据库交互过程中使用的类

  Demo.DataAccessLayer  - 包含 数据访问实现代码 代码类库

  Demo.DataAccessLayer.SqlClient - 包含微软数据库设计范式类库

 

 

步骤5,编译,代码完成

 

恭喜了,你已经有一个实现了微软推荐的最佳设计范式的数据访问层.

 

你现在就可以在Visual Studio .NET项目里使用DAL层了。举一个例子,下面代码是取回一个职工的信息,更新,删除的动作。

 

using Demo.DataAccessLayer.SqlClient;
   
   

  
  
   
   
  
  
// Select by primary key 
     
     
Employee employee = SqlDataRepository.EmployeeProvider.GetByEmployeeID(13);
   
   
employee.FirstName = "John";
   
   
employee.LastName = "Doe";
   
   

  
  
   
   
  
  
// Save changes
     
     
SqlDataRepository.EmployeeProvider.Save(employee);
   
   

  
  
   
   
  
  
// Delete record
     
     
SqlDataRepository.EmployeeProvider.Delete(employee);
   
   

 

关于更多如何使用这个产生的DAL层,可以NetTiers的在线手册。

http://www.nettiers.com/nettiers-manual-v1.aspx

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值