public HttpResponseMessage GetQuery([FromUri] string query, [FromUri] object[] parameter, [FromUri] bool indent = false, [FromUri] TiposRetorno tipoRetorno = TiposRetorno.Json) { try { var formatter = new MaxDepthJsonMediaTypeFormatter() { Indent = indent }; formatter.SerializerSettings.MaxDepth = 1; List <dynamic> _listaResultados = CollectorsClubEntities.ExecuteCommand(query, Enumerable.Select(parameter, p => new SqlParameter("@" + p.ToString().Split('|')[0], (SqlDbType)Enum.Parse(typeof(SqlDbType), p.ToString().Split('|')[1], true)) { Size = (p.ToString().Split('|').Length > 3 && !string.IsNullOrEmpty(p.ToString().Split('|')[3]) ? int.Parse(p.ToString().Split('|')[3]) : 0), Value = ((p.ToString().Split('|')[2] != string.Empty ? p.ToString().Split('|')[2] : null) ?? (object)DBNull.Value) }).ToArray <SqlParameter>(), CommandType.StoredProcedure, ((UsuarioRepository)usuarioRepository).DataContext.Database.Connection.ConnectionString); if (_listaResultados == null) { _listaResultados = new List <dynamic>(); } switch (tipoRetorno) { case TiposRetorno.Json: return(Request.CreateResponse(HttpStatusCode.OK, _listaResultados)); case TiposRetorno.Excel: return(Request.CreateResponse(HttpStatusCode.OK, Utilidades.GenerarExcel((IEnumerable <object>)_listaResultados))); } return(Request.CreateResponse(HttpStatusCode.InternalServerError, "No se ha podido efectuar acción")); } catch (Exception _excepcion) { log.Error(_excepcion); return(Request.CreateResponse(HttpStatusCode.InternalServerError, _excepcion)); } }
public CollectorsClubEntities Get() { return(dataContext ?? (dataContext = new CollectorsClubEntities())); }