NHibernate从入门到精通系列(3)——第一个NHibernate应用程序
2015-09-21 14:59
435 查看
内容摘要
准备工作
开发流程
程序开发
一、准备工作
1.1开发环境
开发工具:VS2008以上,我使用的是VS2010
数据库:任意关系型数据库,我使用的是SQL Server 2005 Express
1.2测试环境
nunit 2.5.7
二、开发流程
NHibernate程序的开发流程是:
(1).编写领域类与映射文件
(2).使用NHibernate工具生成对应的数据库结构
(3).编写DAO(数据库访问对象)
(4).使用NUnit测试DAO(数据访问对象)的增、删、该、查方法
三、程序开发
3.1 建立Domain项目,如图3.1.1所示。
ProductDaoTest
最后运行NUnit测试该项目。效果如图3.3.2所示。
图3.3.2
好了,一个NHibernate完整的项目就做完了。从中我们可以发现,此应用程序项目没有编写一条SQL语句,就能实现数据的增、删、该、查。
这样一来,便简化了我们的项目开发。O(∩_∩)O~
准备工作
开发流程
程序开发
一、准备工作
1.1开发环境
开发工具:VS2008以上,我使用的是VS2010
数据库:任意关系型数据库,我使用的是SQL Server 2005 Express
1.2测试环境
nunit 2.5.7
二、开发流程
NHibernate程序的开发流程是:
(1).编写领域类与映射文件
(2).使用NHibernate工具生成对应的数据库结构
(3).编写DAO(数据库访问对象)
(4).使用NUnit测试DAO(数据访问对象)的增、删、该、查方法
三、程序开发
3.1 建立Domain项目,如图3.1.1所示。
[TestFixture] public class ProductDaoTest { private IProductDao productDao; [SetUp] public void Init() { productDao = new ProductDao(); } [Test] public void SaveTest() { var product = new Domain.Product { ID = Guid.NewGuid(), BuyPrice = 10M, Code = "ABC123", Name = "电脑", QuantityPerUnit = "20x1", SellPrice = 11M, Unit = "台" }; var obj = this.productDao.Save(product); Assert.NotNull(obj); } [Test] public void UpdateTest() { var product = this.productDao.LoadAll().FirstOrDefault(); Assert.NotNull(product); product.SellPrice = 12M; Assert.AreEqual(12M, product.SellPrice); } [Test] public void DeleteTest() { var product = this.productDao.LoadAll().FirstOrDefault(); Assert.NotNull(product); var id = product.ID; this.productDao.Delete(product); Assert.Null(this.productDao.Get(id)); } [Test] public void GetTest() { var product = this.productDao.LoadAll().FirstOrDefault(); Assert.NotNull(product); var id = product.ID; Assert.NotNull(this.productDao.Get(id)); } [Test] public void LoadTest() { var product = this.productDao.LoadAll().FirstOrDefault(); Assert.NotNull(product); var id = product.ID; Assert.NotNull(this.productDao.Get(id)); } [Test] public void LoadAllTest() { var count = this.productDao.LoadAll().Count; Assert.True(count > 0); } }
ProductDaoTest
最后运行NUnit测试该项目。效果如图3.3.2所示。
图3.3.2
好了,一个NHibernate完整的项目就做完了。从中我们可以发现,此应用程序项目没有编写一条SQL语句,就能实现数据的增、删、该、查。
这样一来,便简化了我们的项目开发。O(∩_∩)O~
相关文章推荐
- C#模拟百度登录并到指定网站评论回帖(五)
- Android:设计之屏幕适配
- iOS如何通过企业账号打包网页分发App
- 【干货】前方高能!如何保障Python应用的高性能
- 9.20 fifth 注意事项
- iOS:苹果企业证书通过网页分发安装app
- 选择排序
- Android图片压缩(质量压缩和尺寸压缩)、图片保存(本地和sqlite数据库)
- C# 生成二维码
- hihocode_1227——ceil——The Cats' Feeding Spots
- excel表格的导出
- 消息 xxx,级别 16,状态 x,过程 sp_executesql,第 x 行 过程需要类型为 'ntext/nchar/nvarchar' 的参数 '@statement'。
- Delphi 关键 重启 注销
- Android:控件的隐藏显示
- Android:利用SharedPreferences实现自动登录
- android创建项目自动生成appcompat_v7问题
- scala学习笔记(十七) Actor
- 谈谈我对sku的理解(3)----页面效果
- jquery-fancybox查看大图插件
- 谈谈我对sku的理解(3)----页面效果