public IHttpActionResult GetUsers() { try { using (ReactNativeSampleEntities db = new ReactNativeSampleEntities()) { var users = db.Users.Select(x => new { name = x.FirstName + "" + x.LastName, Id = x.Id }).ToList(); return(Content(HttpStatusCode.OK, new { users })); } } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, "An error occured, please try again later")); } }
public IHttpActionResult GetHobbies() { try { using (ReactNativeSampleEntities db = new ReactNativeSampleEntities()) { var hobbies = db.Hobbies.Select(x => new { label = x.Hobby1, value = x.Id }).ToList(); return(Content(HttpStatusCode.OK, new { hobbies })); } } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, "An error occured, please try again later")); } }
public IHttpActionResult GetUser(int userId) { try { using (ReactNativeSampleEntities db = new ReactNativeSampleEntities()) { var user = db.Users.Find(userId); var userHobbies = db.UserHobbiesMappings.Where(x => x.UserId == userId).ToList(); UserModel userModel = new UserModel(); userModel.Country = user.Country1.Name; userModel.CountryId = user.Country; userModel.FirstName = user.FirstName; userModel.LastName = user.LastName; userModel.Email = user.Email; userModel.DOB = user.DOB; userModel.Gender = user.Gender; List <Hobbies> hobbies = new List <Hobbies>(); for (int i = 0; i < userHobbies.Count(); i++) { Hobbies hobby = new Hobbies(); hobby.value = Convert.ToInt32(userHobbies[i].HobbyId); hobby.label = userHobbies[i].Hobby.Hobby1; hobbies.Add(hobby); } userModel.Hobbies = hobbies; return(Content(HttpStatusCode.OK, new { userModel })); } } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, "An error occured, please try again later")); } }
public IHttpActionResult DeleteUser(int Id) { try { using (ReactNativeSampleEntities db = new ReactNativeSampleEntities()) { var hobbies = db.UserHobbiesMappings.Where(x => x.UserId == Id).ToList(); foreach (var hobby in hobbies) { db.UserHobbiesMappings.Remove(hobby); } var user = db.Users.Find(Id); db.Users.Remove(user); db.SaveChanges(); return(Ok()); } } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, "An error occured, please try again later")); } }
public IHttpActionResult UpdateUser(int userId) { try { using (ReactNativeSampleEntities db = new ReactNativeSampleEntities()) { var user = db.Users.Find(userId); var form = HttpContext.Current.Request.Form; var selectedHobbies = JsonConvert.DeserializeObject <List <Hobbies> >(form.Get("selectedHobbies")); user.FirstName = form.Get("firstName"); user.LastName = form.Get("lastName"); user.Email = form.Get("email"); user.DOB = Convert.ToDateTime(form.Get("DOB")); user.Country = Convert.ToInt32(form.Get("country")); var previousHobbies = db.UserHobbiesMappings.Where(x => x.UserId == userId).ToList(); foreach (var hobby in previousHobbies) { db.UserHobbiesMappings.Remove(hobby); } for (int i = 0; i < selectedHobbies.Count(); i++) { UserHobbiesMapping userHobby = new UserHobbiesMapping(); userHobby.HobbyId = selectedHobbies[i].value; user.UserHobbiesMappings.Add(userHobby); } db.Entry(user).State = EntityState.Modified; return(Ok()); } } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, "An error occured, please try again later")); } }
public IHttpActionResult AddUser() { try { using (ReactNativeSampleEntities db = new ReactNativeSampleEntities()) { var form = HttpContext.Current.Request.Form; var hobbies = JsonConvert.DeserializeObject <List <Hobbies> >(form.Get("selectedHobbies")); User user = new User(); user.FirstName = form.Get("firstName"); user.LastName = form.Get("lastName"); user.Email = form.Get("email"); user.Country = Convert.ToInt32(form.Get("country")); user.Gender = form.Get("gender"); user.DOB = Convert.ToDateTime(form.Get("dob")); for (int i = 0; i < hobbies.Count(); i++) { UserHobbiesMapping hobby = new UserHobbiesMapping(); hobby.HobbyId = hobbies[i].value; user.UserHobbiesMappings.Add(hobby); } db.Users.Add(user); db.SaveChanges(); return(Ok()); } } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, "An error occcured, please try again later")); } }