Automapper вызывает ошибку: отсутствует конфигурация карты типов или не поддерживается отображение

Я новичок в Automapper.

Я добавил пакет Nuget - Automapper в свой слой диспетчера (BLL) и DAL.

Теперь, ниже, связанные вещи:

Ниже приведен статус менеджера библиотеки, который дает мне исключение:

this.dataRepository.Update(Mapper.Map<StudentMaster>(studentDTO));

Исключением является следующее:

Отсутствует конфигурация карты типов или неподдерживаемое отображение.

Типы картографирования:
studentDTO -> СтудентМастер
Admin.App.DTO.studentDTO-> Admin.App.DAL.StudentMaster

В случае запроса select/where на EF, он работает и может отображаться с помощью

.Project().To<TReturn>()

Я написал Autoconfiguration.cs файл следующим образом:

public static class AutoMapperConfiguration
{
    public static void Configure()
    {
        ConfigureStudentMasterMaps();
    }

    private static void ConfigureStudentMasterMaps()
    {
        Mapper.CreateMap<StudentMaster, studentDTO>();                  
    }
}

Замечания:

Обе сущности - StudentMaster (модель) сущность и StudentDTO имеют одинаковые свойства.

Пожалуйста, объясните мне, как я могу решить эту проблему.

Благодарю вас

2 ответа

Решение

См. Начало работы https://github.com/AutoMapper/AutoMapper/wiki/Getting-started

CreateMap<**TSource, TDestination**>()

Вы должны добавить

Mapper.CreateMap<studentDTO, StudentMaster>();

После сопоставления вызова конфигурации

Mapper.AssertConfigurationIsValid();

У меня была похожая проблема, я забыл зарегистрироваться в Global.asax

public class WebApiApplication : System.Web.HttpApplication
{
    protected void Application_Start()
    {
        GlobalConfiguration.Configure(WebApiConfig.Register);


        AutoMapperConfig.RegisterMappings();

    }
}
Другие вопросы по тегам