我有两个实体:
public class TableA
{
public int id { get; set; }
public virtual TableB TableB { get; set; }
}
public class TableB
{
public TableB()
{
TableAList = new List<TableA>();
}
public int id { get; set; }
public virtual List<TableA> TableAList { get; set; }
}
还有两个班级
public class ClasseMetierA
{
private int id;
public ClasseMetierB TableB;
}
public class ClasseMetierB
{
public ClassMetierB()
{
TableAList = new List<ClasseMetierAList>();
}
private int id;
public List<ClasseMetierA> TableAList { get; set; }
}
我想将TableB对象转换为ClasseMetierB对象。 我正在使用具有以下配置的自动映射器:
mapperConfig = new MapperConfiguration(cfg =>
{
cfg.CreateMap<TableA, ClasseMetierA>().MaxDepth(3);
cfg.CreateMap<TableB, ClasseMetierB>().MaxDepth(3);
});
mapperConfig.AssertConfigurationIsValid();
我正在调用此函数来转换我的对象:
public B ConvertDTB(D obj)
{
var mapper = mapperConfig.CreateMapper();
return mapper.Map<B>(obj);
}
问题如下: 当我将TableB对象转换为ClasseMetierB对象时,即使源属性(TableB.TableAList)并非如此,TableAList中所有元素的属性都为空。
我发现这篇帖子(Nested object members null after mapping with Automapper)遇到了类似的问题,但给出的解决方案仅引发了null异常错误。
预先感谢