Beispiel #1
0
        public static BoolResult <IList <TEntity> > RefSPToList <TEntity>(this DataBase db, string spName, params IDataParameter[] parameters) where TEntity : class, new()
        {
            ValidationResults validationResults = new ValidationResults();
            IList <TEntity>   list       = new List <TEntity>();
            IDataReader       dataReader = null;

            try
            {
                dataReader = db.ExecuteSPReader(db.ConnectionString, spName, parameters);
                DynamicBuilder <TEntity> dynamicBuilder = DynamicBuilder <TEntity> .CreateBuilder(dataReader);

                while (dataReader.Read())
                {
                    TEntity item = dynamicBuilder.Build(dataReader);
                    list.Add(item);
                }
            }
            catch (Exception ex)
            {
                validationResults.Add(ex.Message);
            }
            finally
            {
                if (dataReader != null)
                {
                    dataReader.Close();
                }
            }
            return(new BoolResult <IList <TEntity> >(list, validationResults.IsValid, string.Empty, validationResults));
        }
Beispiel #2
0
        public static BoolResult <TEntity> RefToSingle <TEntity>(this DataBase db, string strSql, params IDataParameter[] parameters) where TEntity : class, new()
        {
            ValidationResults validationResults = new ValidationResults();
            TEntity           item       = default(TEntity);
            IDataReader       dataReader = null;

            try
            {
                dataReader = db.ExecuteReader(db.ConnectionString, CommandType.Text, strSql, parameters);
                DynamicBuilder <TEntity> dynamicBuilder = DynamicBuilder <TEntity> .CreateBuilder(dataReader);

                if (dataReader.Read())
                {
                    item = dynamicBuilder.Build(dataReader);
                }
            }
            catch (Exception ex)
            {
                validationResults.Add(ex.Message);
            }
            finally
            {
                if (dataReader != null)
                {
                    dataReader.Close();
                }
            }
            return(new BoolResult <TEntity>(item, validationResults.IsValid, string.Empty, validationResults));
        }