Задать вопрос
@Saharman

Как избавиться от ошибки «No parameterless constructor defined for this object.» при использование automapper?

Добавляю в сервисах таким образом:
services.AddAutoMapper(typeof(Startup).Assembly);
Пробовал и так:
services.AddAutoMapper();
Получаю ошибку
"No parameterless constructor defined for this object."

Вот класс конфигурации:
public class DomainToDto: Profile
    {
        public DomainToDto()
        {
            CreateMap<A, ADto>();
            CreateMap<List<A>, List<ADto>>();
            CreateMap<B, BDto>();
            CreateMap<List<B>, List<BDto>>();
        }
    }

Реализация классов:
public class B
    {
        [Required]
        public int Id { get; set; }
        [Required]
        public string Name { get; set; }
        [Required]
        public string Description { get; set; }

        public List<С> С { get; set; }

        public  List<D> D { get; set; }
        [Required]
        public int AId { get; set; }
        
        public A A { get; set; }

        public B(): base() { }

    }

public class A
    {
        [Required]
        public int Id { get; set; }
        [Required]
        public string Name { get; set; }
        [Required]
        public string Description { get; set; }

        public List<B> B { get; set; }

        public List<E> E { get; set; }

        public A(): base() { }
    }

 public class BDto
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public List<string> CId { get; set; }
        public List<string> DId { get; set; }
        public int AId { get; set; }

        public BDto(): base() { }
    }

public class ADto
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }

        public ADto(): base() { }
    }
  • Вопрос задан
  • 1090 просмотров
Подписаться 2 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 1
@WinnerIT
Программист и фотограф-любитель
Уберите base(). Во всех 4 классах. У Вас нет базовоно класса до Ваших классов
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы