Automapper Object с внутренним списком отображения объекта на примитив - PullRequest
0 голосов
/ 23 ноября 2018

Я пытаюсь создать карту для autopper, чтобы позволить мне сопоставить эти сущности

Сущности

public class Entity 
{
    ...
    public List<NavigationEntity> Navs { get; set; }
}

public class NavigationEntity   
{
    public int Id { get; set; }
}

DTO, которые необходимо создать с сущностями

public class EntityDto 
{
    ...
    public List<int> NavIds { get; set; }
}

Это не похоже на работу!Что может сделать работа?

CreateMap<Entity, EntityDto>().ReverseMap();
CreateMap<NavigationEntity, int>().ConstructUsing(x => x.Id);

РЕДАКТИРОВАТЬ

Попытка добавить
CreateMap , List > ();

нодо сих пор не отображается

1 Ответ

0 голосов
/ 31 декабря 2018

Прежде всего, вы должны переименовать public List<NavigationEntity> Navs { get; set; } и public List<int> NavIds { get; set; } в одно и то же имя.Если это все еще не работает, попробуйте также изменить ConstructUsing на ConvertUsing.И если вам нужна обратная карта Entity для EntityDTO, вы также должны добавить

CreateMap<int, NavigationEntity>().ConvertUsing(x => new NavigationEntity { Id = x });

окончательный код

public class Entity 
{
    ...
    public List<NavigationEntity> Navs { get; set; }
}

public class NavigationEntity   
{
    public int Id { get; set; }
}

public class EntityDto 
{
    ...
    public List<int> Navs { get; set; }
}

...
CreateMap<Entity, EntityDto>().ReverseMap();
CreateMap<NavigationEntity, int>().ConvertUsing(x => x.Id);
CreateMap<int, NavigationEntity>().ConvertUsing(x => new NavigationEntity { Id = x });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...