Beispiel #1
0
        public async Task <IActionResult> RemovePortfolioElem([FromBody] FBKPortfolioElement elem)
        {
            _context.Portfolio.Remove(elem);
            await _context.SaveChangesAsync();

            return(Ok(new { result = "success", elem = elem }));
        }
Beispiel #2
0
        public async Task <IActionResult> AddPortfolioElem([FromBody] FBKPortfolioElement element)
        {
            var elemToUpdate = await _context.Portfolio.AsNoTracking().Include(e => e.Stills).SingleOrDefaultAsync(i => i.ID == element.ID);

            if (elemToUpdate != null)
            {
                _context.Portfolio.Update(element);
                foreach (var still in elemToUpdate.Stills)
                {
                    if (!element.Stills.Any(i => i.ID == still.ID))
                    {
                        _context.MovieStillls.Remove(still);
                    }
                }

                foreach (var still in element.Stills)
                {
                    var stillToUpdate = await _context.MovieStillls.Where(i => i.ID == still.ID).SingleOrDefaultAsync();

                    if (stillToUpdate != null)
                    {
                        _context.MovieStillls.Update(still);
                    }
                    else
                    {
                        await _context.MovieStillls.AddAsync(still);
                    }
                }
            }
            else
            {
                await _context.Portfolio.AddAsync(element);
            }
            await _context.SaveChangesAsync();

            return(Ok(new { result = "success", element = element }));
        }