using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
using System.Web;
|
using NHibernate;
|
using NHibernate.Cfg;
|
|
namespace CCSTrace.CCS
|
{
|
public class NHibertnateSession
|
{
|
public static NHibertnateSession Instance { get; } = new NHibertnateSession();
|
|
private string _configurationPath = null;
|
private ISessionFactory _sessionFactory = null;
|
|
public string ConfigurationPath
|
{
|
get { return _configurationPath; }
|
set { _configurationPath = value; }
|
}
|
|
public ISessionFactory SessionFactory
|
{
|
get { return _sessionFactory; }
|
set { _sessionFactory = value; }
|
}
|
|
public NHibertnateSession()
|
{
|
}
|
|
public NHibertnateSession(string configurationPath)
|
{
|
_configurationPath = configurationPath;
|
}
|
|
public void DefaultInitialize()
|
{
|
if (_configurationPath == null)
|
_configurationPath = HttpContext.Current.Server.MapPath(@"~\DMMSNHibernate.cfg.xml");
|
var configuration = new Configuration();
|
if (_configurationPath != null)
|
configuration.Configure(_configurationPath);
|
configuration.SetProperty("connection.connection_string", GlobalVariable.ConnectionString);
|
|
configuration.AddAssembly("CCSTrace");
|
/*
|
var mappingConfigurationFile = HttpContext.Current.Server.MapPath(@"~\TPower\DMMS\Model\ADDRCONTRAST.hbm.xml");
|
configuration.AddFile(mappingConfigurationFile);
|
*/
|
_sessionFactory = configuration.BuildSessionFactory();
|
}
|
|
|
public ISession OpenSession()
|
{
|
return _sessionFactory?.OpenSession();
|
}
|
public ISession OpenSession(IDbConnection connection)
|
{
|
return _sessionFactory?.OpenSession(connection);
|
}
|
}
|
}
|