Mam następujących klas domeny i Dto klasy:Korzystanie AutoMapper mapować ciąg do wyliczenia
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,
}
użyłem następujące metody:
Mapper.CreateMap<Profile, ProfileDTO>()
.ForMember(d => d.SchoolGrade , op => op.MapFrom(o => o.SchoolGrade))
Następnie pojawia się następujący błąd:
Requested value 'Level Two' was not found.
Jak poprawnie odwzorować?
Jaki jest powód, dla którego podajesz wartość atrybutu wyświetlanego dla wyliczenia? To znaczy. dlaczego używasz "Poziom 2" zamiast "LevelTwo". Wykonanie tego sprawia, że zadanie to jest nieco trudniejsze (wymagać będzie refleksji w celu rozwiązania). – Umair
Użycie 'LevelTwo' pozwoli automatowi mapować bezpośrednio (nie ma potrzeby stosowania bitu' ForMember') – Umair
Jakie jest pytanie? –