我有以下与列表相关的实体:
国家 -> 地区 -> 自治市 -> 街道
当我将 Country 对象映射到我的 DTO 时,AutoMapper 会自动投影我的整个图形,一直到 Streets,这是一个很好的默认设置。在特定用例中,我只想映射根对象(国家)及其直接子对象(区域)。然后,这些地区应该有一个空的市镇列表(或为空)。
实现此目的的一种方法是创建这样的地图:
Mapper.CreateMap<Data.Country, Dto.Country>();
Mapper.CreateMap<Data.Region, Dto.Region>()
.ForMember(dest => dest.Municipalities, opt => opt.Ignore())
这意味着在将 Region 投影为根对象时,将忽略其市镇列表。解决方法是为每个可能的根对象创建单独的 ConfigurationStore 对象,但这会导致很多不同的 ConfigurationStore。有没有办法告诉 AutoMapper 只映射到对象图中的某个深度?