/// <summary> /// Provides the NHibernate's <see cref="ISession"/> from the <see cref="IDataSessionAware"/>. /// </summary> /// <param name="dataSessionAware"></param> /// <returns></returns> public static ISession GetSession(this IDataSessionAware dataSessionAware) { var dataSession = dataSessionAware.GetDataSession(); var dbContext = dataSession.GetSession(); return(dbContext); }
/// <summary> /// Provides the Entity Framework's <see cref="DbContext"/> from the <see cref="IDataSessionAware"/>. /// </summary> /// <typeparam name="TDbContext"></typeparam> /// <param name="dataSessionAware"></param> /// <returns></returns> public static TDbContext GetDbContext <TDbContext>(this IDataSessionAware dataSessionAware) where TDbContext : DbContext { var dataSession = dataSessionAware.GetDataSession(); var dbContext = dataSession.GetDbContext <TDbContext>(); return(dbContext); }
/// <summary> /// Retrieve the <see cref="IDataSession"/> from the <see cref="IDataSessionAware"/>. /// </summary> /// <param name="dataSessionAware"></param> /// <returns></returns> public static IDataSession GetDataSession(this IDataSessionAware dataSessionAware) { var dataSession = DataSession.Current(dataSessionAware.DataName); return(dataSession); }