Könnte jemand bitte erklären, wie ich Automapper verwenden kann, um von DB Int-Wert zu einer Zeichenfolge, mit Enums als die Sammlung.Wie konvertiere ich ein Int in ein Enum und eine Zeichenfolge mit Autoadapter und Int aus DB
Ich habe folgendes
Enum
public enum Status { Open, Closed }
EF 4.1 Domain Model
public class MyEntity
{
...
public int StatusId { get; set; }
public virtual Status Status { get; set; }
}
Dto auf der Webseite verwendet wird
public class MyEntityDto
{
public string Status { get; set; }
}
Aktuelle AutoMapper Zuordnungen
Mapper.CreateMap<int, Status>().ConvertUsing<EnumConverter<Status>>();
Mapper.CreateMap<Enum, string>().ConvertUsing(src => src.ToString());
Mapper.CreateMap<MyEntity, MyEntityDto>()
.ForMember(d => d.Status, o => o.MapFrom(y => y.StatusId))
Die EnumConverter in erster Linie wandelt ohne Problem die int in einen Zustand in Ordnung, aber wie konvertiere ich den int oder Status der Zeichenfolge in der DTO? Im verlorenen jede Hilfe würde geschätzt werden.
Ich weiß, es gibt zwei Conversions hier erforderlich, die ID zu dem Enum, wenn die Daten aus der Datenbank und Enum Bedürfnisse gezogen wird bevölkern und dann die Enum in String getan werden muss
Prost
Awesome Dank für Ihre Hilfe, so einfach am Ende :) – Mark