public async Task <object> Post(CreateEditPublisherModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var publisher = Mapper.Map <Publisher>(model);
                _context.Publishers.Add(publisher);
                await _context.SaveChangesAsync();

                return(Ok(publisher));
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    foreach (var ve in eve.ValidationErrors)
                    {
                        ModelState.AddModelError("", ve.ErrorMessage);
                    }
                }
                return(BadRequest(ModelState));
            }
            catch (Exception e)
            {
                ModelState.AddModelError("", e.InnerException?.Message);
                return(BadRequest(ModelState));
            }
        }
        public async Task <object> Put(CreateEditPublisherModel model)
        {
            var publisher = await _context.Publishers.FindAsync(model.Id);

            if (publisher == null)
            {
                return(BadRequest("Publisher not found"));
            }

            Mapper.Map(model, publisher);

            _context.Publishers.AddOrUpdate(publisher);
            await _context.SaveChangesAsync();

            return(Ok(publisher));
        }