我正在尝试将我的域实体映射到DTO。我在生成的查询中得到的是错误连接的属性名。
这是我的实体类:(为简洁起见,删除了一些代码)
public class Product : BaseEntity
{
public int ProductId { get; set; }
public string Name { get; set; }
public virtual EntityUnit EntityUnit { get; set; }
}
这是我的DTO
public class ProductDto : IMapFrom<Product>
{
public int Id { get; set; }
public string Unit { get; set; }
public void Mapping(Profile profile)
{
profile.CreateMap<Product, ProductDto>()
.ForMember(dest => dest.Name, opt => opt.MapFrom(src => src.EntityUnit.Name));
}
}
这是我的EntityUnit类:
public class EntityUnit : BaseEntity
{
public int UnitId { get; set; }
public string Name { get; set; }
}
毕竟这是生成的查询:(在微型分析器上)
实际上,必须为p.UnitId而不是EntityUnitUnitId(有效)。 Automapper的版本是9.0
我在这里做错了什么?