Exemplo n.º 1
0
        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));
            }
        }
Exemplo n.º 2
0
 public CollectorsClubEntities Get()
 {
     return(dataContext ?? (dataContext = new CollectorsClubEntities()));
 }