public async Task<HttpResponseMessage> UpdateMisc(MiscName misc) { if (!ModelState.IsValid) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } if (_repMisc.GetAll().Any(m => m.MiscId == misc.Id)) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Этот словарь содержит значения, его нельзя переименовать."); } if (_repMiscNames.GetAll().Any(m => m.Name == misc.Name)) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Эта группа словарей уже содержит словарь с таким названием."); } var miscDb = await _repMiscNames.FindAsync(m => m.Id == misc.Id); if (miscDb == null) { return Request.CreateResponse(HttpStatusCode.NotFound); } miscDb.Name = misc.Name; await _repMiscNames.UpdateAsync(miscDb); return Request.CreateResponse(HttpStatusCode.NoContent); }
public async Task<HttpResponseMessage> CreateMisc(MiscName misc) { if (!ModelState.IsValid) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } if (_repMiscNames.GetAll().Any(m => m.Name == misc.Name && m.DocType == misc.DocType)) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "В этой группе уже используется данное значение."); } await _repMiscNames.AddAsync(misc); return Request.CreateResponse(HttpStatusCode.OK, misc); }
private Misc GetOrCreateMisc(MiscName miskName, string value) { var misc = _db.Misc.SingleOrDefault(m => m.MiscId == miskName.Id && m.MiscValue == value); if (misc == null) { misc = new Misc { MiscId = miskName.Id, MiscValue = value }; _db.Misc.Add(misc); _db.SaveChanges(); } return misc; }