• Nhibernate 入门示例


    在开始前:

    下载Nhibernate,官方网站:https://www.hibernate.org/343.html,将下载的文件解压在本地目录,里面包含了必需的dll文件和XML文件的样例等。新建解决方案如下:

    lib:必须的dll,可在下载的文件夹中找到

    Client:测试用,为启动项目(zzy.db 为数据库文件)

    domain:实体类和相应的映射文件

    HbernateHelper:用来获取Session

    具体步骤如下:

    1,新建数据库表TB_PERSON如下:

    其中ID为整形主键,自动增长

    2,新建Nhibernate的配置文件hibernate.cfg.xml如下:

    Code

    该配置文件可以在下载的Nhibernat压缩文件中找到模板。

    3,新建实体及映射文件

    其中Person类代码如下:

    Code

    对应的映射文件Person.hbm.xml如下:

    Code

    该映射文件也可在下载的Nhibernate压缩文件中找到模板。

    4,获取Session

    在HbernateHelper下新建类:Helper,代码如下:

    Code

    5,在主项目中测试结果

     


    using System;
    using System.Collections.Generic;
    using System.Text;
    using HbernateHelper;
    using NHibernate;
    using Domain.Entities;

    namespace Fuck
    {
        
    class Program
        {
            
    static void Main(string[] args)
            {
                ISession session 
    = Helper.GetSession();

                Person person 
    = new Person();
                person.Name 
    = "zzy";
                person.Age 
    = 24;
                session.SaveOrUpdate(person);
                session.Flush();
                session.Close();

                session 
    = Helper.GetSession();
                Person anotherPerson 
    = (Person)session.Get<Person>(1);
                Console.Write(anotherPerson.Name 
    + "  AGE:" + anotherPerson.Age.ToString());
                Console.Read();

                session.Flush();
                session.Close();
            }
        }
    }


    测试代码中包含一个简单的新建和查询操作,需要注意:别忘了把必要的dll引用加上。

    这就是全部。

  • 相关阅读:
    Android事件机制之一:事件传递和消费
    数据类型和JSON格式
    json 数据交换格式与java
    写给iOS程序员的命令行使用秘籍
    pthread_create线程创建的过程剖析
    同步变量及知识要素
    mysql 批量更新与批量更新多条记录的不同值实现方法
    gettype
    寻求全站搜索功能开发思路
    DEDE中 field:rel 是什么意思,起一个什么样的作用效果
  • 原文地址:https://www.cnblogs.com/zzy0471/p/1604740.html
Copyright © 2020-2023  润新知