【发布时间】:2014-02-10 19:34:30
【问题描述】:
我遇到了 AutoMapper(.NET 4.5 上的 3.1.1)库的问题,非常奇怪,非常感谢您的帮助。
我有四个对象:
public class UserDetail
{
public int Salary { get; set; }
public Address House { get; set; }
public Address Office { get; set; }
}
public class UserDetailEntity
{
public int Salary { get; set; }
public Guid HouseId { get; set; }
public Guid? OfficeId { get; set; }
public virtual AddressEntity House { get; set; }
public virtual AddressEntity Office { get; set; }
}
public class Address
{
public string Street { get; set; }
}
public class AddressEntity
{
public string Street { get; set; }
}
在这种情况下:
Mapper.CreateMap<Address, AddressEntity>();
Mapper.CreateMap<UserDetail, UserDetailEntity>()
.ForMember("Office", s => s.MapFrom(ud => ud.Office));
UserDetailEntity entity = Mapper.Map<UserDetail, UserDetailEntity>(dto);
Assert.AreEqual(dto.House.Street, entity.House.Street);
Assert.AreEqual(dto.Office.Street, entity.Office.Street);
办公地址中的断言失败我总是得到房子地址:(
谢谢!
【问题讨论】:
标签: .net automapper