NHibernate是.Net平台下一个成熟的,开源的对象关系映射器(ORM)。本文来介绍第一次使用NHibernate的时候的配置。

  1.下载NHibernate。Nhibernate官网最新版本为NH3.3.3,下载地址:http://nhforge.org/

  2.NHibernate压缩包解压后,将其中Required_Bins文件夹下的引用拷贝到你的项目根目录下。确保包含如下文件:

  

  3.将NHibernate.dll添加引用到你所对应的项目中。

  

  4.添加Mapping文件。该文件是一个将你定义的实体和数据库表字段进行匹配的xml文件。一般以*.hbm.xml命名。

  5.对Mapping xml文件添加Schema。路径为Request_Bins文件夹中的nhibernate-mapping.xsd。步骤:XML->Schemas->Add

  

  添加Shema后就会有对应的智能提示。

  

  

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="NHibernate.Entity"
namespace="NHibernate.Entity"> <class name="Product" table="ProductInfo" >
<id name="Id">
<generator class="guid" />
</id>
<property name="Name" />
<property name="Category" />
<property name="Discontinued" />
</class>
</hibernate-mapping>

  6.将Mapping文件的Build Action设置为Embedded Resource,Copy to OutPut Directory设置为Copy always。至此一个简单的Mapping文件就配置好了。

  

  7.配置NHibernate数据库文件。一般以hibernate.cfg.xml命名,起哄<mapping>结点指向的是你的mapping文件的assembly name。和上面的Mapping一样可以为hibernate.cfg.xml添加Schema,路径路径为Request_Bins文件夹中的nhibernate-configuration.xsd。

   下面代码以SQL Server2008作为Provider。

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="dialect">NHibernate.Dialect.MsSql2008Dialect</property>
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="connection.connection_string">Server=.;database=tempdb;uid=***;pwd=***;</property> <!--开发过程中用于调试-->
<property name="show_sql">true</property>
<mapping assembly="NHibernate.Entity"/>
</session-factory>
</hibernate-configuration>

  8.同样也要将hibernate.cfg.xml文件的Build Action设置为Embedded Resource,Copy to OutPut Directory设置为Copy always。至此,一个NHibernate的简单配置就完成了。

转载请注明来源:http://www.cnblogs.com/caoming/p/4154373.html

[NHibernate]第一个NHibernate的应用配置的更多相关文章

  1. 4、ASP.NET MVC入门到精通——NHibernate构建一个ASP.NET MVC应用程序

    下周就去办理离职手续了,之前没有使用过NHibernate,只知道NHibernate是一种ORM框架,但是听说新公司是使用NHibernate在做项目,所以,我就网上找资料学习一下NHibernat ...

  2. [转]NHibernate之旅(2):第一个NHibernate程序

    本节内容 开始使用NHibernate 1.获取NHibernate 2.建立数据库表 3.创建C#类库项目 4.设计Domain 4-1.设计持久化类 4-2.编写映射文件 5.数据访问层 5-1. ...

  3. NHibernate构建一个ASP.NET MVC应用程序

    NHibernate构建一个ASP.NET MVC应用程序 什么是Nhibernate? NHibernate是一个面向.NET环境的对象/关系数据库映射工具.对象/关系数据库映射(object/re ...

  4. Nhibernate学习教程(2)-- 第一个NHibernate程序

    NHibernate之旅(2):第一个NHibernate程序 本节内容 开始使用NHibernate 1.获取NHibernate 2.建立数据库表 3.创建C#类库项目 4.设计Domain 4- ...

  5. NHibernate从入门到精通系列(3)——第一个NHibernate应用程序

    内容摘要 准备工作 开发流程 程序开发 一.准备工作 1.1开发环境 开发工具:VS2008以上,我使用的是VS2010 数据库:任意关系型数据库,我使用的是SQL Server 2005 Expre ...

  6. [NHibernate]缓存(NHibernate.Caches)

    系列文章 [Nhibernate]体系结构 [NHibernate]ISessionFactory配置 [NHibernate]持久化类(Persistent Classes) [NHibernate ...

  7. [NHibernate] 入门实例 NHibernate 3.3 GA + VS2010 +MySQL

    题外话: 中国的技术论坛要赶上stackoverflow的水平.至少还需35年.中国程序猿笔者的特点是:太浮躁,太easy下总结.太自得其乐,虽说写的是为了让别人更好的看.却也演变成了一种" ...

  8. 一个简单的零配置命令行HTTP服务器

    http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 安装 (全局安装加 -g) ...

  9. 一个简单的零配置命令行HTTP服务器 - http-server (nodeJs)

    http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 安装 (全局安装加 -g) ...

随机推荐

  1. 2014年---移动端webapp个人年度总结

    我今年是由零基础开始入门的,刚好我第一家公司入职后就马上让我接手做ipad版的专题app了.(一入门就是移动端开发,是幸运也是艰辛的开始). 我是自学前端的,当然,对Bootstrap,JQuery  ...

  2. C# Byte[] 转String 无损转换

    C# Byte[] 转String 无损转换 转载请注明出处 http://www.cnblogs.com/Huerye/ /// <summary> /// string 转成byte[ ...

  3. CSS Sprites优缺点

    利用CSS Sprites能很好地减少网页的http请求,从而大大的提高页面的性能,这也是CSS Sprites最大的优点,也是其被广泛传播和应用的主要原因: CSS Sprites能减少图片的字节, ...

  4. C++程序设计基础

    01 1 预编译常用的有,宏定义和包含库.2 库:是实用工具的集和,由程序员编写,可以完成一些特定的功能.3 <> 系统库 ""用户自定义库.4 宏定义:定义符号常量, ...

  5. Python中模块安装文件的创建及使用

    在Python编程中,我们常常需要自己编写模块,当模块文件写好了,就需要创建安装文件,方便模块的发布. 此时,常用的方法,就是使用Python distutils(代表distribution uti ...

  6. [转]python 常用类库!

    Python学习 On this page... (hide) 1. 基本安装 2. Python文档 2.1 推荐资源站点 2.2 其他参考资料 2.3 代码示例 3. 常用工具 3.1 Pytho ...

  7. 小的div在大的div中垂直居中

    方法一: 1.代码: <div style="width:200px;height:200px;border:solid blue;position:relative;"&g ...

  8. 监控Activity的启动等状态--- 源码级

    1.代码 参见:http://stackoverflow.com/questions/9452549/monitoring-the-recent-apps private void setActivi ...

  9. window下安装anaconda ipython和spyder都打不开

    1. 环境 win7 64位,软件是Anaconda2-4.1.1-Windows-x86_64.exe 2. 出现的问题 ipython打不开,一闪而过 spyder点击没有反应 anaconda ...

  10. pip install Error - ReadTimeoutError: HTTPSConnectionPool

    pip install Error OSX 终端更新pip出错 sudo pip install --upgrade pip : 1.ReadTimeoutError: HTTPSConnection ...