[NHibernate]第一个NHibernate的应用配置

  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>
View Code

  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

posted @ 2014-12-09 22:31  Norton.Li  阅读(411)  评论(0编辑  收藏  举报