zoukankan      html  css  js  c++  java
  • 不顾一切最简NHinbernate配置并读写数据库

    本文旨在使从未用过NHinbernate的人,使用NHinbernate从0开始到能够读写数据库,所有设置都是最简和默认。

    必要条件是应当对C#有所了解,数据库可以不必了解。

    1.打开VS建立一个新的类库项目(要选.net framework,其它类型没试过),添加对NHibernate的引用。NHibernate下载地址:https://nhibernate.info,下载后解压,引用。

    2.新建一个文件hibernate.cfg.xml,放在项目的根目录下,文件名固定,位置固定,这是默认的规则(以后可以配置,暂时不要动),写入以下文本:

    <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
      <session-factory>
        <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
        <property name="connection.connection_string">Data Source=192.168.1.111;Initial Catalog=abc;Persist Security Info=True;User ID=sa;Password=12345;</property>
        <property name="dialect">NHibernate.Dialect.MsSql2012Dialect</property>
        <mapping assembly="TestNHibernate3" />
      </session-factory>
    </hibernate-configuration>

    以上的4行,是最低要求,缺一不可。

    其中,connection.driver_class是数据库驱动程序所在的类,如果记不住,可以在引用中右键NHinbernate,在对象浏览器中查看,找到NHibernate.Driver,这里可以看到各种数据库连接程序,我使用的是Sql Server,所以选SqlClientDriver,复制,粘贴到文件中。同时试了一下并列的Sql2008ClientDriver,也可以用,试了一下NHibernate.Driver.OracleClientDriver,不能用,会报错,主要是因为连接字符串不兼容。其它没试,应该是存在着同样的问题。

    connection.connection_string是数据库连接串,不多说。

    dialect是数据库类型,可以在引用中右键NHinbernate,在对象浏览器中查看,找到NHibernate.Dialect,找到MsSql2012Dialect,复制,粘贴。

    mapping的assembly是dll的名称,在本项目中,就是项目的名称TestNHibernate3,对应的dll是TestNHibernate3.dll

    3.新建一个实体类

    4.新建一个实体映射文件

    4.新建一个数据访问类

    5.新建一个测试项目

    注意事项:

    1.测试项目一旦在自己的Debug目录下生成了hibernate.cfg.xml,那么需要重新生成主程序,再次运行测试,才会在自己的Debug下更新

    2.XML文件区分大小写,数据库中的表名如果是Abc,在配置文件中写成abc会报No persist for错误。

  • 相关阅读:
    [ZROI 9.16模拟赛] Tutorial
    [ZROI 9.15模拟赛] Tutorial
    [USACO 2017 Open Gold] Tutorial
    [USACO 2017 Feb Gold] Tutorial
    [USACO 2017 Jan Gold] Tutorial
    [BZOJ 1208] 宠物收养所
    [BZOJ 1500] 维护序列
    多表查询
    sql查询语句查询顺序
    单表查询
  • 原文地址:https://www.cnblogs.com/Sabre/p/15178168.html
Copyright © 2011-2022 走看看