博客
关于我
NHibernate使用之详细图解
阅读量:809 次
发布时间:2023-02-15

本文共 1483 字,大约阅读时间需要 4 分钟。

NHibernate框架是一个强大的对象关系映射工具,适用于在.NET开发环境中与数据库进行交互。本文将指导您一步步配置并使用NHibernate 2.1.2框架。

一、创建数据库和映射表

  • 数据库创建

    创建一个名为hibDB的数据库。

  • 映射表设计

    在数据库中创建一个名为people的表,字段包括:id(主键,自动递增)、Name(字符串)、Age(整数)和BirthDate(日期)。

  • 二、项目配置与实体类映射

  • 项目创建

    使用Visual Studio创建一个新的类库项目,命名为Com.uuu9.nHibernate

  • 实体类开发

    创建一个名为People.cs的实体类,字段与数据库表一致。每个属性前都要添加virtual关键字,确保程序能够正确运行。

  • 映射文件配置

    为每个实体类创建一个对应的映射文件,文件名为实体类.hbm.xml。在文件中添加以下内容:

    将映射文件设置为嵌入资源,确保程序能够找到该文件。

  • 三、引入NHibernate DLL

    在项目中引入以下NHibernate相关DLL文件:

    • NHibernate.dll
    • NHibernate.Linq.dll
    • NHibernate.Proxy.dll

    四、配置hibernate.cfg.xml

  • 创建一个名为hibernate.cfg.xml的文件,放在项目的Bin目录中。
    数据源连接字符串
    NHibernate.Dialect.MsSql2005Dialect
    MsSql2005Dialect
    数据库用户名
    数据库密码

    根据数据库实际情况调整连接字符串和dialect属性。

  • 五、使用NHibernate进行操作

    在代码中使用NHibernate进行CRUD操作:

    using (ISession session = sessionFactory.OpenSession()){    using (ITransaction transaction = session.BeginTransaction())    {        People person = new People();        person.Name = "张三";        person.Age = 30;        person.BirthDate = DateTime.Now;        session.Save(person);        transaction.Commit();    }}

    注意事项

  • 确保hibernate.cfg.xml文件名称和路径正确。
  • 检查数据库连接字符串是否正确,包括服务器、数据库名、用户名和密码。
  • 确保所有依赖项(如NHibernate DLL)已正确引入。
  • 通过以上步骤,您可以成功配置并使用NHibernate 2.1.2框架进行数据库操作。如果有任何问题,请参考NHibernate官方文档或相关教程进行进一步的解决。

    转载地址:http://myjfk.baihongyu.com/

    你可能感兴趣的文章
    NoSQL介绍
    查看>>
    Notadd —— 基于 nest.js 的微服务开发框架
    查看>>
    Notepad ++ 安装与配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    Notepad++在线和离线安装JSON格式化插件
    查看>>
    notepad++最详情汇总
    查看>>
    notepad如何自动对齐_notepad++怎么自动排版
    查看>>
    Notification 使用详解(很全
    查看>>
    NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()
    查看>>
    Now trying to drop the old temporary tablespace, the session hangs.
    查看>>
    nowcoder—Beauty of Trees
    查看>>
    np.arange()和np.linspace()绘制logistic回归图像时得到不同的结果?
    查看>>
    np.power的使用
    查看>>
    NPM 2FA双重认证的设置方法
    查看>>
    npm build报错Cannot find module ‘webpack/lib/rules/BasicEffectRulePlugin‘解决方法
    查看>>
    npm build报错Cannot find module ‘webpack‘解决方法
    查看>>
    npm ERR! ERESOLVE could not resolve报错
    查看>>
    npm ERR! fatal: unable to connect to github.com:
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near '...on":"0.10.3","direc to'
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near ‘...“:“^1.2.0“,“vue-html-‘ npm ERR! A comp
    查看>>
    npm error Missing script: “server“npm errornpm error Did you mean this?npm error npm run serve
    查看>>