/// <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);
        }
예제 #2
0
        /// <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);
        }