Automapper 8.1.0 не игнорирует целевой столбец без соответствующего исходного столбца - PullRequest
0 голосов
/ 24 июня 2019

Я пытаюсь сопоставить источник с классом dest, это прекрасно работает.Однако, когда я добавляю целевой столбец, который не существует в источнике, он терпит неудачу.

Я пытался использовать .formember (cfg => cfg.Selected, opt => opt.ignore ()).Это не работает.Я попытался украсить свойство с помощью AutoMapper.Configuration.Annotations [ignore], это не работает.Я пытаюсь заполнить список свойствами из базы данных, но оставить свойство пустым для использования позже.См. Ниже.

asp.net Core 2.2

public void ConfigureServices(IServiceCollection services)
    {
        services.AddAutoMapper(typeof(Startup).Assembly);
    }

public class MappingProfile : Profile
{
    public MappingProfile()
    {
        //admin NewsFeedContentDetails
        CreateMap<GameChange.WebSite.Model.User, NewsFeedContentDetailsViewModel.UserInfo>()
            .ForMember(cfg=> cfg.Selected, opt=> opt.Ignore());
    }
}

public class UserInfo
    {
        public Guid Id { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public string Email { get; set; }
        [Ignore]
        public string Selected { get; set; }
    }

//executed from a controller action
var UserInfos = _mapper.Map<IEnumerable<ApplicationUser>,IEnumerable<NewsFeedContentDetailsViewModel.UserInfo>>(_db.Users.OrderBy(x=> x.LastName).ThenBy(x=> x.FirstName).ThenBy(x=> x.Email));

Я надеюсь, что смогу сопоставить источник с dest без необходимости заполнять свойство Selected.Все остальные сопоставления работают нормально.Просто, когда я добавляю дополнительный конфиг, он не работает

...