У меня есть следующие классы домена и DTO классы:Использование AutoMapper для отображения строки в перечислении
public class Profile
{
public string Name { get; set; }
public string SchoolGrade { get; set; }
}
public class ProfileDTO
{
public string Name { get; set; }
public SchoolGradeDTO SchoolGrade { get; set; }
}
public enum SchoolGradeDTO
{
[Display(Name = "Level One"]
LevelOne,
[Display(Name = "Level Two"]
LevelTwo,
}
Я использовал следующий метод:
Mapper.CreateMap<Profile, ProfileDTO>()
.ForMember(d => d.SchoolGrade , op => op.MapFrom(o => o.SchoolGrade))
После этого, я получаю следующее сообщение об ошибке:
Requested value 'Level Two' was not found.
Как правильно его сопоставить?
Любая причина, по которой вы передаете значение атрибута отображения для перечисления? То есть почему вы используете «Level Two» вместо «LevelTwo». Это делает задачу намного сложнее (для ее устранения потребуется разрешение). – Umair
Использование 'LevelTwo' позволит автоматически отображать карту памяти (не нужно бит' ForMember') – Umair
В чем вопрос? –