AutoMapper Как отобразить вложенный объект из ObjectId
Я пытаюсь сопоставить свойство ReferralContract.AssessmentId с Referral.Assessment.Id. Приведенный ниже код работает, но я уверен, что есть более чистый способ сделать это... Пожалуйста, скажите мне, что это так;-)
// Destination classes
public class Referral
{
public Referral()
{
Assessment = new Assessment();
}
public int Id { get; set; }
public Assessment Assessment { get; set; }
}
public class Assessment
{
public int Id { get; set; }
}
// Source Class
public class ReferralContract
{
public int Id { get; set; }
public int AssessmentId { get; set; }
}
Отображение Automapper, которое я использую,
Mapper.CreateMap<ReferralContract, Referral>()
.ForMember(x => x.Assessment,
opt => opt.MapFrom(scr => new Assessment { Id = scr.AssessmentId }));
1 ответ
Решение
На данный момент это самый чистый путь. Дизайн AutoMapper не оптимизирован для этих сценариев с обратным отображением, но я обращаю внимание на будущие версии.