public List <TEntity> ToList <TEntity>(ProcBuilder procBuilder, TEntity entity) where TEntity : class, new() { // 生成SQL 输入、输出参数化 var sqlParam = procBuilder.InitParam(entity); var param = sqlParam.Param?.ToArray(); var value = SqlExtend.ToList <TEntity>(DataBase.GetReader(CommandType.StoredProcedure, sqlParam.Name, param)); procBuilder.SetParamToEntity(entity); return(value); }
/// <summary> /// 查询单个字段值 /// </summary> /// <typeparam name="T">返回值类型</typeparam> /// <typeparam name="TEntity">实体类型</typeparam> /// <param name="procBuilder">存储过程生成器</param> /// <param name="entity">实体</param> /// <param name="defValue">默认值</param> public T GetValue <TEntity, T>(ProcBuilder procBuilder, TEntity entity, T defValue = default(T)) where TEntity : class, new() { // 生成SQL 输入、输出参数化 var sqlParam = procBuilder.InitParam(entity); var param = sqlParam.Param?.ToArray(); var value = DataBase.ExecuteScalar(CommandType.StoredProcedure, sqlParam.Name, param); procBuilder.SetParamToEntity(entity); return(ConvertHelper.ConvertType(value, defValue)); }
/// <summary> /// 返回影响行数 /// </summary> /// <typeparam name="TEntity">实体类</typeparam> /// <param name="procBuilder">SQL语句与参数</param> /// <param name="entity">实体类</param> public DataTable ToTable <TEntity>(ProcBuilder procBuilder, TEntity entity) where TEntity : class, new() { // 生成SQL 输入、输出参数化 var sqlParam = procBuilder.InitParam(entity); var param = sqlParam.Param?.ToArray(); var value = DataBase.GetDataTable(CommandType.StoredProcedure, sqlParam.Name, param); procBuilder.SetParamToEntity(entity); return(value); }
/// <summary> /// 返回影响行数 /// </summary> /// <typeparam name="TEntity">实体类</typeparam> /// <param name="procBuilder">SQL语句与参数</param> /// <param name="entity">实体类</param> public TEntity ToEntity <TEntity>(ProcBuilder procBuilder, TEntity entity) where TEntity : class, new() { // 生成SQL 输入、输出参数化 var sqlParam = procBuilder.InitParam(entity); var param = sqlParam.Param?.ToArray(); TEntity t; using (var reader = DataBase.GetReader(CommandType.StoredProcedure, sqlParam.Name, param)) { t = reader.ToEntity <TEntity>(); } DataBase.Close(false); procBuilder.SetParamToEntity(entity); return(t); }