我已经尝试了Google结果、Stackoverflow和AutoMapper中的大多数示例,但无法使IValueResolver依赖注入起作用。
我有以下服务。
这是我的个人资料。
这是我的 IValueResolver。
我在内部异常中收到以下错误:
“此对象没有定义无参数构造函数。”
不确定我做错了什么。
提前致谢。 Neo
我有以下服务。
public class StorageService : IStorageService
{
private readonly BlobServiceSettings _blobServiceSettings;
public StorageService(IOptions<BlobServiceSettings> blobServiceSettings)
{
_blobServiceSettings = blobServiceSettings.Value;
}
// some methods I need
}
这是我的个人资料。
public class MappingProfile : Profile
{
public MappingProfile()
{
CreateMap<Building, BuildingEnvelope>(MemberList.None)
.ForMember(dest => dest.ImageUrl, opt => opt.ResolveUsing<BuildingImageUrlResolver>());
}
}
这是我的 IValueResolver。
public class BuildingImageUrlResolver : IValueResolver<Building, BuildingEnvelope, string>
{
private readonly IStorageService _storageService;
public BuildingImageUrlResolver(IStorageService storageService)
{
_storageService = storageService;
}
public string Resolve(Building entity, BuildingEnvelope envelope, string member, ResolutionContext context)
{
return _storageService.MyMethod(entity.ImageFileName);
}
}
我在内部异常中收到以下错误:
“此对象没有定义无参数构造函数。”
不确定我做错了什么。
提前致谢。 Neo