3

我的问题的代码示例:

IList<TestDataAnimal> testDataFromDb = this.db.TestDataAnimals.Include(t => t.TestType).Include(t => t.Visit).Include(t => t.Visit.Patient).ToList();

Mapper.CreateMap<TestDataAnimal, TestDataAnimalViewModel>();

IList<TestDataAnimalViewModel> viewModelList = Mapper.Map<IList<TestDataAnimal>, IList<TestDataAnimalViewModel>>(testDataFromDb);

在上面的代码中,testDataFromDb返回我需要的所有数据。到目前为止,一切都很好......我知道我从数据库中获取了所有正确的数据。问题是viewModelList没有填充来自Visit.Patient.

我的视图模型具有FirstNameLastNameMRNDOB和的属性PatientId。除了在PatientId中命名IdVisit.Patient,属性名称在域对象和视图模型中匹配。

如何让 AutoMapper 使用中找到的值填充我的视图模型属性Visit.Patient?谢谢!

解决方案 - 在这里添加是因为我无法回答我自己的问题......

这叫做扁平化,我刚刚在这里找到了一个视频

基本上,这就是我想要的:

Mapper.CreateMap<TestDataAnimal, TestDataAnimalViewModel>()
.ForMember(d => d.FirstName, opt => opt.MapFrom(s => s.Visit.Patient.FirstName));
4

1 回答 1

0

这叫做扁平化,我刚刚在这里找到了一个视频

基本上,这就是我想要的:

Mapper.CreateMap<TestDataAnimal, TestDataAnimalViewModel>()
.ForMember(d => d.FirstName, opt => opt.MapFrom(s => s.Visit.Patient.FirstName));

*在这里发布后不久就找到了我自己问题的答案,但 SO 说我无法回答我自己的问题。现在,我在几个小时内都无法接受自己的答案。

于 2012-06-22T13:18:02.953 回答