public class BaseViewModel
{
public MyEnum EnumValue {get;set;}
public string PropA { get; set; }
}
public class Enum1ViewModel : BaseViewModel
{
public string PropB {get; set;}
}
public class Enum2ViewModel : BaseViewModel
{
public string PropC {get; set;}
}
public class Enum3ViewModel : BaseViewModel
{
public string PropD {get; set;}
}
public enum MyEnum
{
Value1,
Value2,
Value3
}
public class MyEntity
{
public MyEnum EnumValue {get; set;}
public string PropA {get;set;}
public string PropB {get;set;}
public string PropC {get;set;}
public string PropD {get;set;}
public string PropE {get;set;}
}
public class MapperProfile : Profile
{
public MapperProfile()
{
CreateMap<Enum1ViewModel, MyEntity>()
.ForMember(m => m.EnumValue, o => o.UseValue(MyEnum.Value1)
.ForMember(m => m.PropC, o => o.Ignore())
.ForMember(m => m.PropD, o => o.Ignore())
.ForMember(m => m.PropE, o => o.Ignore());
CreateMap<Enum2ViewModel, MyEntity>()
.ForMember(m => m.EnumValue, o => o.UseValue(MyEnum.Value2)
.ForMember(m => m.PropB, o => o.Ignore())
.ForMember(m => m.PropD, o => o.Ignore())
.ForMember(m => m.PropE, o => o.Ignore());
CreateMap<Enum3ViewModel, MyEntity>()
.ForMember(m => m.EnumValue, o => o.UseValue(MyEnum.Value3)
.ForMember(m => m.PropB, o => o.Ignore())
.ForMember(m => m.PropC, o => o.Ignore())
.ForMember(m => m.PropE, o => o.Ignore());
// Question: How do I do the reverse mapping??
}
}
Ich habe diese Frage zu Jimmy Bogard auf Twitter, aber ich dachte, dass die Antwort möglicherweise mehr Leute dann mir nur helfen könnte.AutoMapper: Mapping-Klasse Viewmodels auf dem Wert eines Aufzählungs je
Wenn ich Jimmys Antwort bekomme, bevor er sie hier veröffentlicht, oder jemand von euch, werde ich es selbst beantworten.
Was ist das Problem hier im Code? –