public HttpResponseMessage Put(int id, SymmetricKeyModel model) { if (!ModelState.IsValid) { return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState.GetErrors())); } var sk = this.config.Keys.All.SingleOrDefault(x => x.ID == id) as SymmetricKey; if (sk == null) { return(Request.CreateResponse(HttpStatusCode.NotFound)); } if (this.config.Keys.All.Any(x => x.Name == model.Name && x.ID != id)) { ModelState.AddModelError("", "That Name is already in use."); return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState.GetErrors())); } sk.Name = model.Name; this.config.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.NoContent)); }
public HttpResponseMessage Post(SymmetricKeyModel model) { if (!ModelState.IsValid) { return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState.GetErrors())); } var sk = new SymmetricKey(); sk.Name = model.Name; sk.SetValue(Convert.FromBase64String(model.Value)); this.config.Keys.Add(sk); this.config.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.OK, new { ID = sk.ID })); }