AutoMapperMappingException: не удается создать экземпляр типа .netcore - PullRequest
0 голосов
/ 30 мая 2018

Я использую Структурную карту в качестве моего di-контейнера в ядре asp.net, и когда я хочу разрешить некоторые Сервисы в каком-то автоматическом распознавателе, например:

public class UserRolesResolver : IValueResolver<User, CurrentUserVeiwModel, List<string>>
{
    private readonly AppUserManager _appUserManager;

    public UserRolesResolver(AppUserManager appUserManager)
    {
        _appUserManager = appUserManager;
    }

    public List<string> Resolve(User source, CurrentUserVeiwModel destination, List<string> destMember, ResolutionContext context)
    {
        destination.Roles = AsyncHelpers.RunSync(() => _appUserManager.GetRolesAsync(source)).ToList();
        return destination.Roles;
    }
}

То, что я получил, это

AutoMapperMappingException: не удается создать экземпляр типа AutomapperProfiles.UserRolesResolver

Я также настроил автоматическое преобразование в классе запуска следующим образом:

 services.AddAutoMapper(x =>
        {
            x.AddProfiles(Assembly.GetAssembly(typeof(OrderProfile)));
            x.ConstructServicesUsing(type=> ServiceProvider.GetRequiredService(type));
        });
...