public async Task <ActionResult <LibraryModelClasses.MediaElement> > GetMediaElement(int MediaElementId)
        {
            LibraryModelClasses.MediaElement mediaElement = null;

            try
            {
                mediaElement = await _context.MediaElements.Where(a => a.MediaElementId == MediaElementId).Select(item => new LibraryModelClasses.MediaElement()
                {
                    MediaElementId            = item.MediaElementId,
                    Title                     = item.Title,
                    Year                      = item.Year,
                    Cover                     = item.Cover,
                    Comment                   = item.Comment,
                    UserLoginWhoChangedStatus = item.UserLoginWhoChangedStatus,
                    IsBorrowed                = item.IsBorrowed,
                    BorrowDate                = item.BorrowDate,
                    MediaType                 = item.MediaType,
                    CreatorId                 = item.CreatorId,
                    Creator                   = _context.Creators.Where(a => a.CreatorId == item.CreatorId).Select(creator => new LibraryModelClasses.Creator()
                    {
                        CreatorId = creator.CreatorId,
                        Name      = creator.Name,
                        Surname   = creator.Surname
                    }).FirstOrDefault()
                }).FirstAsync();
            }
            catch
            {
                return(NotFound());
            }

            return(mediaElement);
        }
        public async Task <IActionResult> PutMediaElement(int MediaElementId, LibraryModelClasses.MediaElement mediaElement)
        {
            if (MediaElementId != mediaElement.MediaElementId)
            {
                return(BadRequest());
            }

            _context.Entry(mediaElement).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(NoContent());
        }
        public async Task <ActionResult <LibraryModelClasses.MediaElement> > PostMediaElement(LibraryModelClasses.MediaElement mediaElement)
        {
            _context.MediaElements.Add(mediaElement);
            await _context.SaveChangesAsync();

            return(CreatedAtAction(nameof(GetMediaElement), new { id = mediaElement.MediaElementId }, mediaElement));
        }