動作していないか、動作していません...相互に継承する複数のビューにマップする単一のSourceクラスがあります。
基本的に、基本クラスはDetailであり、子クラスはEditまたはUpdateであり、Detailと同じデータに加えて、独自のリストなどを管理するための他のいくつかのフィールドを使用します。
これが私が使用しているマップです:
Mapper.CreateMap<Ticket, Detail>()
.Include<Ticket, Update>()
.Include<Ticket, Edit>()
.ForMember(dest => dest.Priority, opt => opt.MapFrom(src => src.Priority.Code))
.ForMember(dest => dest.TicketID, opt => opt.MapFrom(src => src.ID))
.ForMember(dest => dest.Status, opt => opt.MapFrom(src => src.StatusCode))
.ForMember(dest => dest.Category, opt => opt.MapFrom(src => src.ProblemCategoryCode))
.ForMember(dest => dest.crmBusCode, opt => opt.MapFrom(src => src.Company.crmBusCode))
.ForMember(dest => dest.TeamMembers, opt => opt.MapFrom(src => src.Schedules.Where(s => s.CompleteTime == null)));
Mapper.CreateMap<Ticket, Update>()
.ForMember(m => m.Schedules, opt => opt.MapFrom(t => t.Schedules.Where(s => s.EmployeeID == Util.CurrentUserID() && s.CompleteTime == null)));
Mapper.CreateMap<Ticket, Edit>();
次に、MapFromを使用するプロパティのいずれかがMapper.Map(ticket)で評価されない場合、マッピングが設定されていない場合の値になります。
では、ここで何が問題になっていますか?