AutoMapper.Extensions.Microsoft.DependencyInjection 6.0.0中“ResolveUsing”的替代方法是什么?

问题描述 投票:2回答:1

我正在使用AutoMapper.Extensions.Microsoft.DependencyInjection 6.0.0开发.Net核心2.1。这是我的映射配置:

CreateMap<User, UserForListDto>()
   .ForMember(dest => dest.Age, opt => {
       opt.ResolveUsing(d => d.DateOfBirth.CalculateAge());
});

这里ResolveUsing不起作用,因为它在版本6.0.0中被删除或重命名,但它在版本4.0.1中工作正常。

我没有找到关于他们的github变化的任何参考。任何人都可以告诉我ResolveUsing版本中6.0.0的替代方案是什么?

问题创建了here

c# automapper asp.net-core-2.1
1个回答
1
投票

我得到了答案。在最新版本中,我们不再需要ResolveUsing了。 MapFrom增加了一个超载,用于ResolveUsing的目的。

// Old
CreateMap<User, UserForListDto>()
   .ForMember(dest => dest.Age, opt => {
       opt.ResolveUsing(d => d.DateOfBirth.CalculateAge());
});

// New
CreateMap<User, UserForListDto>()
   .ForMember(dest => dest.Age, opt => {
       opt.MapFrom(d => d.DateOfBirth.CalculateAge());
});

更多细节here

© www.soinside.com 2019 - 2024. All rights reserved.