public IHttpActionResult PutPerson(int id, Person person) { if (!ModelState.IsValid) { return BadRequest(ModelState); } if (id != person.ID) { return BadRequest(); } db.Entry(person).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!PersonExists(id)) { return NotFound(); } else { throw; } } return StatusCode(HttpStatusCode.NoContent); }
public IHttpActionResult PostPerson(Person person) { if (!ModelState.IsValid) { return BadRequest(ModelState); } db.Persons.Add(person); db.SaveChanges(); return CreatedAtRoute("DefaultApi", new { id = person.ID }, person); }
public IHttpActionResult PostPerson(ApiModels.Person person,string apikey,string devicetoken) { var a = _context.Devices.SingleOrDefault(x => x.ApiKey == apikey); if (a == null) return Ok(HelperStrings.WrongApiKeyForDevice); var errors = new List<ErrorContainer>(); person.Email = person.Email.Trim(); if (!RegexUtilities.IsValidEmail(person.Email)) { errors.Add(new ErrorContainer { Property = "Email", Errormessage = "Not a valid emailaddress." }); } if (string.IsNullOrEmpty(person.Name)) { errors.Add(new ErrorContainer { Property = "Name", Errormessage = "Name canĀ“t be empty." }); } if (errors.Any()) { person.Errors = errors; return Ok(person); } if (_context.Persons.Any(x => x.Email == person.Email)) errors.Add(new ErrorContainer { Property = "Email", Errormessage = "The emailaddress is already used, try forgotten my password." }); person.Errors = errors; if (!person.Errors.Any()) { var p = new DBModel.Person { Name = person.Name, Email = person.Email, EmailNotifications = (byte)Enums.EmailNotifications.Everything, LastLogin = DateTime.Now, ExternalID = Guid.NewGuid(), Password = person.Password, Status = 0, Options = (byte)Enums.Options.ShowFriends }; p.Devices.Add(new DevicePersons { Person = p, Device = a, DeviceToken = person.DeviceToken }); //var mailSender = new MailSender(); //p = mailSender.Send(p, Enums.MailType.AccountActivated, null); _context.Persons.Add(p); try { _context.SaveChanges(); } catch (Exception ex) { person.Errors = new List<ErrorContainer> { new ErrorContainer { Errormessage = ex.Message } }; } person.Id = p.ExternalID; } return CreatedAtRoute("DefaultApi", new { id = person.Id }, person); }