/// <summary> /// 初始化一个<see cref="SqlExecutorBase{TEntity,TKey}"/>类型的新实例 /// </summary> protected SqlExecutorBase(IServiceProvider provider) { IUnitOfWorkManager unitOfWorkManager = provider.GetService <IUnitOfWorkManager>(); DbContext dbContext = (DbContext)unitOfWorkManager.GetDbContext <TEntity, TKey>(); _connectionString = dbContext.Database.GetDbConnection().ConnectionString; Logger = provider.GetLogger(GetType()); }
/// <summary> /// 初始化一个<see cref="SqlExecutorBase{TEntity,TKey}"/>类型的新实例 /// </summary> protected SqlExecutorBase(IUnitOfWorkManager unitOfWorkManager) { DbContext dbContext = (DbContext)unitOfWorkManager.GetDbContext <TEntity, TKey>(); _connectionString = dbContext.Database.GetDbConnection().ConnectionString; }
/// <summary> /// 获取指定实体所在的上下文对象 /// </summary> public static IDbContext GetDbContext <TEntity, TKey>(this IUnitOfWorkManager unitOfWorkManager) where TEntity : IEntity <TKey> { Type entityType = typeof(TEntity); return(unitOfWorkManager.GetDbContext(entityType)); }
/// <summary> /// 获取指定实体类型的上下文对象 /// </summary> public static IDbContext GetDbContext <TEntity, TKey>(this IServiceProvider provider) where TEntity : IEntity <TKey> { IUnitOfWorkManager unitOfWorkManager = provider.GetService <IUnitOfWorkManager>(); return(unitOfWorkManager.GetDbContext <TEntity, TKey>()); }