嗨,我正在使用 AutoMapper 从模型转移到 Dto,它工作得很好。
合一TypeConverter
我需要注入(inject)类型转换器必须使用的接口(interface)(服务)才能进行转换。
如何在 AutoMapper 中完成此操作?
最佳答案
你能不能只在你的TypeConverter
上创建一个构造函数?上课,接受服务?而不是使用通用的 ConvertUsing
,传入你的 TypeConverter
的新实例用服务构建...
public class MyTypeConverter : TypeConverter<String, String>
{
public MyTypeConverter(IMyService service)
{
MyService = service;
}
public IMyService MyService { get; set; }
protected override string ConvertCore(string source)
{
//use service
}
}
用法:
Mapper.CreateMap<string, string>()
.ConvertUsing(new MyTypeConverter(_myService));
关于dependency-injection - AutoMapper TypeConverter 自定义构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4227307/