我正在尝试使用EF的导航属性来映射两个集合。
Collection.Items是一个List。
CollectionDTO有一个导航属性指向一个交叉连接表CollectionItem,该表又有另一个导航属性指向Item。
我希望每个CollectionDTO.CollectionItem.Item都能映射到Collection.Item。
我尝试过这个方法但无法解决问题。
有人可以帮忙吗?
Collection.Items是一个List。
CollectionDTO有一个导航属性指向一个交叉连接表CollectionItem,该表又有另一个导航属性指向Item。
我希望每个CollectionDTO.CollectionItem.Item都能映射到Collection.Item。
我尝试过这个方法但无法解决问题。
有人可以帮忙吗?
var mapperConfig = new MapperConfiguration(cfg =>
{
// CreateMap<source, destination>()
cfg.CreateMap<Collection, CollectionDTO>()
.ForMember(dest => dest.Items,
opts => opts.MapFrom(src =>
src.CollectionItems.Where(x => x.CollectionId == src.Id).ToList().ForEach(ci => ci.Item)));
});
CollectionItems
表示连接表,而Item
是一个引用导航属性。 - ocuenca