コード例 #1
0
        /// <summary>
        /// 获取指定实体类型的Sql执行器
        /// </summary>
        public static ISqlExecutor <TEntity, TKey> GetSqlExecutor <TEntity, TKey>(this IUnitOfWorkManager unitOfWorkManager) where TEntity : IEntity <TKey>
        {
            OSharpDbContextOptions options                  = unitOfWorkManager.GetDbContextResolveOptions(typeof(TEntity));
            DatabaseType           databaseType             = options.DatabaseType;
            IList <ISqlExecutor <TEntity, TKey> > executors = unitOfWorkManager.ServiceProvider.GetServices <ISqlExecutor <TEntity, TKey> >().ToList();

            return(executors.FirstOrDefault(m => m.DatabaseType == databaseType));
        }
コード例 #2
0
        /// <summary>
        /// 获取指定实体类型的数据上下文选项
        /// </summary>
        public static OSharpDbContextOptions GetDbContextResolveOptions <TEntity, TKey>(this IUnitOfWorkManager unitOfWorkManager) where TEntity : IEntity <TKey>
        {
            Type entityType = typeof(TEntity);

            return(unitOfWorkManager.GetDbContextResolveOptions(entityType));
        }