public DataQuery Search(DataQueryInput input) { DataQuery data = new DataQuery(); SubCategoriaQueryInput queryInput = (SubCategoriaQueryInput)input; SqlParameter[] sqlParams = { new SqlParameter("@tamanio", queryInput.tamanio), new SqlParameter("@pagina", queryInput.pagina) }; data = _repository.ExecuteProcedureQuery(Consultas.DboSubCategoriaBuscar, sqlParams, Mensaje.SubCategoriaPlural); return(data); }
public DataQuery Search(DataQueryInput input) { DataQuery data = new DataQuery(); ProductoQueryInput queryInput = (ProductoQueryInput)input; SqlParameter[] sqlParams = { new SqlParameter("@texto", queryInput.texto), new SqlParameter("@idsubsubcategoria", queryInput.idSubSubCategoria), new SqlParameter("@tamanio", queryInput.tamanio), new SqlParameter("@pagina", queryInput.pagina) }; data = _repository.ExecuteProcedureQuery(Consultas.DboBuscarProductoporIdSubSubCategoria, sqlParams, Mensaje.ProductoPlural); return(data); }
public virtual DataQuery ExecuteProcedureQuery(String procedureCommand, DataQueryInput input, string entidadError) { SqlParameter OutputParam = new SqlParameter("@total", SqlDbType.Int); OutputParam.Direction = ParameterDirection.InputOutput; OutputParam.Value = 0; SqlParameter[] parameters = { new SqlParameter("@texto", input.texto), new SqlParameter("@pagina", input.pagina), OutputParam }; DataQuery data = new DataQuery(); int total = 0; var cmd = _context.Database.GetDbConnection().CreateCommand(); cmd.CommandText = procedureCommand; cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddRange(parameters); _context.Database.OpenConnection(); SqlParameter return_Value = new SqlParameter("@RETURN_VALUE", SqlDbType.Int); return_Value.Direction = ParameterDirection.ReturnValue; cmd.Parameters.Add(return_Value); IList <IDictionary <string, object> > objDict = new List <IDictionary <string, object> >(); using (DbDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { Dictionary <string, object> objFilaDicy = new Dictionary <string, object>(); objFilaDicy = Enumerable.Range(0, dr.FieldCount).ToDictionary(dr.GetName, dr.GetValue); objDict.Add(objFilaDicy); } } /* Output and return values are not available until here */ if (OutputParam.Value != DBNull.Value) { total = Convert.ToInt32(OutputParam.Value); } if (objDict.Count != 0) { data.data = objDict; data.total = total; } else { data.apiEstado = Status.Error; if (entidadError != null && String.IsNullOrEmpty(entidadError)) { data.apiMensaje = Mensaje.NoExisteDefecto; } else { data.apiMensaje = String.Format(Mensaje.NoExiste, entidadError); } } _context.Database.CloseConnection(); return(data); }