Exemple #1
0
        protected int protectedCount(IDataProvider dataProvider)
        {
            SqlStatement sqlStatement = DbSqlFactories.BuildFunctionSqlStatement(dataProvider.DatabaseContext.DbTranslator, this.entityInfo, whereExpr, "", FieldFunction.Count);
            object       obj          = dataProvider.ExecuteScalar(sqlStatement);

            if (obj == null)
            {
                return(0);
            }
            return(Convert.ToInt32(obj));
        }
 public virtual int Delete(Expression <Func <TEntity, bool> > predicate)
 {
     if (predicate == null)
     {
         return(0);
     }
     return(this.UnitOfWorkManager.ExecuteWithUOW(() =>
     {
         IDataProvider dataProvider = this._dataProviderFactory.GetDataProvider(this.getDatasettingName());
         SqlStatement sqlStatement = DbSqlFactories.BuildDeleteSqlStatement(dataProvider.DatabaseContext.DbTranslator, this.EntityInfo, predicate);
         return dataProvider.ExecuteNonQuery(sqlStatement);
     }));
 }
Exemple #3
0
        protected double?protectedSum <TKey>(Expression <Func <TEntity, TKey> > expr, IDataProvider dataProvider)
        {
            string       columnName   = GetColumnName <TKey>(expr);
            SqlStatement sqlStatement = DbSqlFactories.BuildFunctionSqlStatement(dataProvider.DatabaseContext.DbTranslator,
                                                                                 this.entityInfo, whereExpr, columnName, FieldFunction.Sum);

            object obj = dataProvider.ExecuteScalar(sqlStatement);

            if (obj == null)
            {
                return(null);
            }
            return(Convert.ToDouble(obj));
        }
 public virtual long Count(Expression <Func <TEntity, bool> > predicate)
 {
     return(this.UnitOfWorkManager.ExecuteWithUOW(() =>
     {
         IDataProvider dataProvider = this._dataProviderFactory.GetDataProvider(this.getDatasettingName());
         SqlStatement sqlStatement = DbSqlFactories.BuildFunctionSqlStatement(dataProvider.DatabaseContext.DbTranslator, this.EntityInfo, predicate, "", FieldFunction.Count);
         object obj = dataProvider.ExecuteScalar(sqlStatement);
         if (obj == null)
         {
             return 0;
         }
         return Convert.ToInt64(obj);
     }));
 }
Exemple #5
0
        protected TEntity protectedFirstOrDefault(IDataProvider dataProvider)
        {
            TEntity      obj          = null;
            SqlStatement sqlStatement = DbSqlFactories.BuildSelectSqlStatement(dataProvider.DatabaseContext.DbTranslator, this.entityInfo, whereExpr, order);

            dataProvider.ExecuteReader(sqlStatement, delegate(IDataReader dr)
            {
                while (dr.Read())
                {
                    DataReaderDeserializer deserializer = entityInfo.GetDataReaderDeserializer(dr);
                    obj = (TEntity)deserializer(dr);
                    break;
                }
            });
            return(obj);
        }
        public virtual bool Delete(TEntity entity)
        {
            if (entity == null)
            {
                return(false);
            }

            int result = this.UnitOfWorkManager.ExecuteWithUOW(() =>
            {
                IDataProvider dataProvider = this._dataProviderFactory.GetDataProvider(this.getDatasettingName());
                SqlStatement sqlStatement  = DbSqlFactories.BuildDeleteSqlStatement(dataProvider.DatabaseContext.DbTranslator, this.EntityInfo, entity);
                return(dataProvider.ExecuteNonQuery(sqlStatement));
            });

            return(result > 0);
        }
        public void DbSqlFactories_CUD_SQL()
        {
            EntityConfigurationFactory.SetConfiguration(typeof(User), typeof(UserEntityConfiguration));

            IDbTranslator dbTranslator = new MySQLTranslator();
            IEntityMapper entityInfo   = EntityMapperFactory.Instance.GetEntityMapper(typeof(User));
            object        entity       = new User()
            {
                Id = 10
            };

            SqlStatement InsertSql = DbSqlFactories.BuildInsertSqlStatement(dbTranslator, entityInfo, entity);
            SqlStatement UpdateSql = DbSqlFactories.BuildUpdateSqlStatement(dbTranslator, entityInfo, entity);
            SqlStatement DeleteSql = DbSqlFactories.BuildDeleteSqlStatement(dbTranslator, entityInfo, entity);

            Assert.Equal(1, 1);
        }
Exemple #8
0
        protected IList <TEntity> protectedSelect(IDataProvider dataProvider)
        {
            var          ret          = new System.ComponentModel.BindingList <TEntity>();
            SqlStatement sqlStatement = DbSqlFactories.BuildSelectSqlStatement(dataProvider.DatabaseContext.DbTranslator,
                                                                               this.entityInfo, whereExpr, range, order);

            dataProvider.ExecuteReader(sqlStatement, delegate(IDataReader dr)
            {
                while (dr.Read())
                {
                    DataReaderDeserializer deserializer = entityInfo.GetDataReaderDeserializer(dr);
                    do
                    {
                        ret.Add((TEntity)deserializer(dr));
                    }while (dr.Read());
                }
            });
            return(ret);
        }
Exemple #9
0
        public void Delete(User user)
        {
            SqlStatement sqlStatement = DbSqlFactories.BuildDeleteSqlStatement(dataProvider.DatabaseContext.DbTranslator, this.EntityInfo, user);

            dataProvider.ExecuteNonQuery(sqlStatement);
        }