使用自定义值解析器处理配置文件依赖性(Automapper 8.0)

时间:2019-05-01 07:07:57

标签: c# asp.net-core automapper

使用带有自定义值解析器和依赖项的automapper 8.0。 我的源类包含一个布尔属性,必须将其转换为目标类中的字符串。为此,我必须使用注入了服务的自定义值解析器。

我已经通过该链接执行了我想要做的事情:https://social.technet.microsoft.com/wiki/contents/articles/51043.automapper-handling-profile-dependencies-using-custom-value-resolvers.aspx

自从新版本的AutoMapper以来,ResolveUsing已由MapFrom取代。我该怎么办,但是当我将解析器与“ MapFrom”一起使用时,会显示此错误:没有给定对应于IPathConfigurationExpression.MapFrom(Expression>)'所需形式参数'sourceMember'的参数

// The resolver
public class MyResolver : IValueResolver<SourceType, DestType, string>
{
    private readonly IMyService _myService;
    public MyResolver(IMyService myService)
    {
        _myService = myService;
    }

    public string Resolve(SourceType source, DestType destination, string destMember, ResolutionContext context)
    {
        return source.MyProperty? _myService.GetById(1) : _myService.GetById(2);
    }
}

// The call
CreateMap<DestType, SourceType>()
     .ForPath(dest => dest.Obj1.Obj2.myProperty, opt => opt.MapFrom<MyResolver>());

我忘记了什么吗?

0 个答案:

没有答案