У меня проблема с отображением. Вот моя модель .
public class Post
{
public int Id { get; set; }
public string Description { get; set; }
public DateTime Created { get; set; }
public User User { get; set; }
public int UserId { get; set; }
}
Мой Dto:
public class PostForReturnDto
{
public PostForReturnDto()
{
Created = DateTime.Now;
}
public int Id { get; set; }
public string Description { get; set; }
public DateTime Created { get; set; }
public string Author { get; set; }
}
AutoMapperProfiles.cs
CreateMap<Post, PostForReturnDto>()
.ForMember(p => p.Author,
opt => opt.MapFrom(src => src.User.KnownAs));
RepositoryContext
public async Task<IEnumerable<Post>> GetPosts() {
var posts = _context.Posts
.Include(u => u.User)
.OrderByDescending(p => p.Created)
.ToListAsync();
return await posts;
}
В режиме отладки в PostController я получаю следующую информацию с пользовательским объектом внутри.
Я пытаюсь сопоставить свойство KnownAs объекта User с моим DTO, но безуспешно. Ошибка:
AutoMapper.AutoMapperMappingException: отсутствует конфигурация карты типов или не поддерживается отображение. Типы сопоставления: список 1 -> PostForReturnDto
System.Collections.Generic.List
1 [[DateApp.API.Models.Post, DateApp.API, версия = 1.0.0.0, культура = нейтральный, PublicKeyToken = null]] -> DateApp.API.Dtos.PostForReturnDto в lambda_method (закрытие , List`1, PostForReturnDto, ResolutionContext) в lambda_method (закрытие, объект, объект, ResolutionContext) в AutoMapper.Mapper.Map [TDestination] (источник объекта) в C: \ projects \ automapper \ src \ AutoMapper \ Mapper.cs : строка 35