public async Task<IHttpActionResult> Actividades() { try { var query = ParseObject.GetQuery("Actividad"); IEnumerable<ParseObject> results = await query.FindAsync(); List<Actividad> resp = new List<Actividad>(); foreach (ParseObject obj in results) { Actividad actividad = new Actividad(); actividad.idActividad = obj.ObjectId; actividad.idUsuario = obj.Get<ParseUser>("usuario").ObjectId; actividad.capacidad = obj.Get<int>("capacidad"); actividad.mensaje = obj.Get<string>("mensaje"); actividad.nombre = obj.Get<string>("nombre"); actividad.fecha = obj.Get<string>("fecha"); try { GeoPoint lugar = new GeoPoint(); lugar.lat = obj.Get<ParseGeoPoint>("Lugar").Latitude; lugar.lon = obj.Get<ParseGeoPoint>("Lugar").Longitude; actividad.lugar = lugar; } catch (Exception b) { } try { actividad.foto = obj.Get<ParseFile>("foto").Url.AbsoluteUri; } catch (Exception a) { actividad.foto = "http://pinkie.mylittlefacewhen.com/media/f/rsz/99_large.jpg"; } resp.Add(actividad); } return Ok(resp); } catch (ParseException e) { return InternalServerError(e); } }
public async Task<IHttpActionResult> NuevaActividad([FromBody]Actividad act) { try { ParseObject actividad = new ParseObject("Actividad"); actividad["nombre"] = act.nombre; actividad["fecha"] = act.fecha; actividad["capacidad"] = act.capacidad; actividad["mensaje"] = act.mensaje; Byte[] bytes = Convert.FromBase64String(act.foto); ParseFile foto = new ParseFile("foto.png", bytes); await foto.SaveAsync(); actividad["foto"] = foto; actividad["usuario"] = await ParseUser.Query.GetAsync(act.idUsuario); actividad["Lugar"] = new ParseGeoPoint(act.lugar.lat, act.lugar.lon); await actividad.SaveAsync(); Actividad acti = new Actividad(); acti.idActividad = actividad.ObjectId; acti.idUsuario = actividad.Get<ParseUser>("usuario").ObjectId; acti.capacidad = actividad.Get<int>("capacidad"); acti.mensaje = actividad.Get<string>("mensaje"); acti.nombre = actividad.Get<string>("nombre"); acti.fecha = actividad.Get<string>("fecha"); acti.foto = actividad.Get<ParseFile>("foto").Url.AbsoluteUri; return Ok(acti); } catch (ParseException e) { return InternalServerError(e); } }