zoukankan      html  css  js  c++  java
  • nhibernate使用记录

    最基本的元素NHibernate.dll(这是必须的,各种对数据库操作都需要它),NHibernate.ByteCode.LinFu和NHibernate.ByteCode.Castle这两个,任选其一,用作数据持久化,hibernate.cfg.xml,这个是sessionfactory 如何操作数据库的一个配置,也可以放在web.config里,但是单拿出来更好,这些是基本配置。困了,下一回记录剩下的东西。然后就是实体类了和实体类的映射文件。最后是执行代码了。

      public class NHibernateHelper
        {
            private const string CurrentSessionKey = "nhibernate.current_session";
            private static readonly ISessionFactory sessionFactory;

            static NHibernateHelper()
            {
                sessionFactory = new Configuration().Configure().BuildSessionFactory();
            
            }
            public static ISession GetCurrentSession()
            {
                HttpContext context = HttpContext.Current;
                ISession currentSession = context.Items[CurrentSessionKey] as ISession;

                if (currentSession == null)
                {
                    currentSession = sessionFactory.OpenSession();
                    context.Items[CurrentSessionKey] = currentSession;
                }
            
                return currentSession;
            }

        }

    我把它的初始化放在global下,其实放在一个类里边也是一样的。

     Models.NHibernateHelper nhHelper=new MvcApplication2.Models.NHibernateHelper();

    下回记录多表操作

  • 相关阅读:
    使用VSCode创建简单的Razor Webapp--1.入门
    ASP.NET Razor 常用示例
    ASP.NET Razor 语法
    ASP.NET Razor简介
    EF CodeFirst 一对一、一对多、多对多关系
    mysql外键
    EF CodeFirst 之 Fluent API
    替换JDK 对eclipse的影响?
    mysql数据库,安装 !创建!...详解!
    Apache的commons工具类
  • 原文地址:https://www.cnblogs.com/chenleinet/p/1800301.html
Copyright © 2011-2022 走看看