Example #1
0
        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());
        }
Example #2
0
 public virtual void Update(T entity)
 {
     dbSet.Attach(entity);
     dataContext.Entry(entity).State = EntityState.Modified;
 }
Example #3
0
        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));
        }