Вы не можете ввести что-то жестко закодированное.Сожалею.Никакая структура DI не поддерживает это.В вашем конструкторе вы жестко закодировали экземпляр, так что это больше не инверсия управления.Чтобы выполнить инверсию управления, вы должны определить свои слои как можно слабосвязанными:
public class EFRoleProvider: RoleProvider
{
private readonly IContextFactory _contextFactory;
public EFRoleProvider(IContextFactory contextFactory)
{
_contextFactory = contextFactory;
}
}
Теперь перейдите к настройке структуры DI.