| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- using NHibernate;
- using NHibernate.Cfg;
- using System.Collections;
- namespace NHibernateHelper
- {
- public class NHibernateHelper
- {
-
- private static ISessionFactory factory = null;
-
- public static ISessionFactory GetSessionFactory(string dialect, string driver, string connstr)
- {
- //读取配置文件
- //读取所有的映射文件--必须是嵌入资源
- try
- {
- Configuration config = new Configuration().Configure();//.AddAssembly("Model");
- config.Properties[NHibernate.Cfg.Environment.Dialect] = dialect;//"NHibernate.Dialect.OracleDialect";
- config.Properties[NHibernate.Cfg.Environment.ConnectionDriver] = driver; //"NHibernate.Driver.OracleClientDriver";
- config.Properties[NHibernate.Cfg.Environment.ConnectionString] = connstr;//"Data Source=core;Integrated Security=false;uid=cxuser;pwd=cxuser;Pooling=true;Min Pool Size=3;Max Pool Size=4";
- //创建Session工厂,负责持久化的连接以及OR映射,该对象的开销比较大,一般我们建议用单例模式来实现
- factory = config.BuildSessionFactory();
- return factory;
- }
- catch (Exception ex)
- {
- throw new Exception(ex.Message);
- }
- }
- }
- }
|