How can I solve this error on my MovieStoreApi?

Viewed 54

Here is my movie Model.

public class Movie
    {
        public int Id { get; set; }
        public string MovieName { get; set; }
        public int PublishYear { get; set; }
        public string MovieGenre { get; set; }
        public Director Director { get; set; }
        public List<Performer> Performers { get; set; }
        public double Price { get; set; }    
    }

Here is my Director model.

public class Director
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Surname { get; set; }
        public List<Movie> DirectedMovies { get; set; }

    }

Here is my IRepository.

public interface IRepository<TEntity> where TEntity : class
    {
        IEnumerable<TEntity> GetAll();
        Task<TEntity> GetById(int id);
        void Create(TEntity entity);
        Task<TEntity> Update(TEntity entity);
        Task Delete(int id);
    }

Here is my Repository.

public class Repository<TEntity> : IRepository<TEntity> where TEntity : class
    {
        private readonly ApplicationDbContext _context;
        internal DbSet<TEntity> _dbSet;
        public Repository(ApplicationDbContext context)
        {
            _context = context;
            _dbSet = _context.Set<TEntity>();
        }    
        public void Create(TEntity entity)
        {
             _context.Set<TEntity>().Add(entity);
             _context.SaveChanges();
        }    
        public IEnumerable<TEntity> GetAll()
        {
            return _context.Set<TEntity>().AsNoTracking();
        }

Here is my MovieRepository and IMovieRepository.

 public interface IMovieRepository : IRepository<Movie>
    {

    }
public class MovieRepository : Repository<Movie>, IMovieRepository
    {
        private ApplicationDbContext _context;
        public MovieRepository(ApplicationDbContext context) : base(context)
        {
            _context = context;
        }

Here is my MovieController.

public class MovieController : ControllerBase
    {
        private readonly IMovieRepository _movieRepository; 
        public MovieController(IMovieRepository movie)
        {
            _movieRepository = movie;
        }
        [HttpGet]
        public async Task<IActionResult> GetMovies()
        {
           var allMovies = _movieRepository.GetAll();
           return Ok(allMovies);
        }
        [HttpPost]
        public void PostMovie(Movie movie)
        {
           _movieRepository.Create(movie); 
        }

When I start post operation, I get the following error:

enter image description here

What could be the reason for this ? Looking forward to your help. Thanks in advance.

And here is my JSON Request Body. enter image description here

0 Answers
Related