コード例 #1
0
        public async Task <IActionResult> PutBanqProgram(int id, BanqProgram banqProgram)
        {
            if (id != banqProgram.Id)
            {
                return(BadRequest());
            }

            _context.Entry(banqProgram).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!BanqProgramExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #2
0
        public async Task <ActionResult <BanqProgram> > PostBanqProgram(BanqProgram banqProgram)
        {
            try
            {
                if (banqProgram.Id == 0)
                {
                    _context.BanqProgram.Add(banqProgram);
                }
                else
                {
                    _context.Entry(banqProgram).State = EntityState.Modified;

                    foreach (var foodItem in banqProgram.BanqProgramFood)
                    {
                        if (foodItem.Id == 0)
                        {
                            _context.BanqProgramFood.Add(foodItem);
                        }
                        else
                        {
                            _context.Entry(foodItem).State = EntityState.Modified;
                        }
                    }


                    foreach (var amenityItem in banqProgram.BanqProgramAmenity)
                    {
                        if (amenityItem.Id == 0)
                        {
                            _context.BanqProgramAmenity.Add(amenityItem);
                        }
                        else
                        {
                            _context.Entry(amenityItem).State = EntityState.Modified;
                        }
                    }


                    foreach (var id in banqProgram.DeletedFoodItemIds.Split(',').Where(x => x != ""))
                    {
                        var fooodItems = await _context.BanqProgramFood.FindAsync(Convert.ToInt32(id));

                        _context.Remove(fooodItems);
                    }

                    foreach (var id in banqProgram.DeletedAmenityItemIds.Split(',').Where(x => x != ""))
                    {
                        var amenityItems = await _context.BanqProgramAmenity.FindAsync(Convert.ToInt32(id));

                        _context.Remove(amenityItems);
                    }
                }


                await _context.SaveChangesAsync();


                return(Ok());
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }