public async Task <IActionResult> PutTicket(long id, Ticket ticket, string token) { if (!checkToken(token, "PutTicket")) { return(StatusCode(403)); } if (id != ticket.Id) { return(BadRequest()); } _context.Entry(ticket).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TicketExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public virtual void Update(T entity) { dbSet.Attach(entity); dataContext.Entry(entity).State = EntityState.Modified; }
public async Task <HttpResponseMessage> UpdateRailwayAsync(IEnumerable <RailwayJsonModel> railways) { if (railways == null) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } try { bool isUpdated = false; List <Railway> railwaysNew = new List <Railway>(); foreach (var railway in railways) { var value = await _context.Railways.SingleOrDefaultAsync(r => r.Id == railway.ID); if (value != null) // update { if (railway.DateUpdate > value.DateUpdate) { continue; } value.ShortName = railway.ShortName; value.Name = railway.Name; value.TelegraphName = railway.TelegraphName; value.CountryId = railway.CountryID; value.DateCreate = railway.DateCreate; value.DateUpdate = railway.DateUpdate; value.Code = railway.Code; _context.Entry(value).State = EntityState.Modified; isUpdated = true; } else // new { railwaysNew.Add(new Railway { Id = railway.ID, Code = railway.Code, Name = railway.Name, ShortName = railway.ShortName, TelegraphName = railway.TelegraphName, DateCreate = railway.DateCreate, DateUpdate = railway.DateUpdate, CountryId = railway.CountryID }); } } if (isUpdated) { await _context.SaveChangesAsync(); } if (railwaysNew.Count > 0) { await _context.Railways.AddRangeAsync(railwaysNew); await _context.SaveChangesAsync(); } } catch { return(new HttpResponseMessage(HttpStatusCode.InternalServerError)); } return(new HttpResponseMessage(HttpStatusCode.OK)); }