我使用 EmitMapper 和奉承配置表单 EmitMapper 示例将我的实体映射到 DTO。
问题是如果源值是对象的属性(即为空),我会得到 NullReferenceException,例如:
public class User
{
public Guid Id { get; set; }
public Company Company { get; set; }
}
public class Company
{
public Guid Id { get; set; }
}
public class UserDTO
{
public Guid Id { get; set; }
public Guid CompanyId{ get; set; }
}
我将用户映射到 UserDTO:var mapper = ObjectMapperManager.DefaultInstance.GetMapper<User, UserDTO>(
new FlatteringConfig()
);
var dto = mapper.Map(new User());
当 EmitMapper 将尝试获取 CompanyId 时,它会调用 Company 对象 Id 属性的 getter,但它为 null。
任何帮助将不胜感激。