您好我正在使用AutoMapper从模型转移到Dto,它运行良好。
在一个TypeConverter
中,我需要注入一个必须由类型转换器使用的接口(服务)才能进行转换。
如何在AutoMapper中完成此操作?
答案 0 :(得分:12)
你能不能只在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));