ASP.NET MVC: HTTPContext e injeção de dependência

Atualmente, tenho um ActionFilter que obtém o nome de usuário atual do HttpContext e o passa para a ação que o utiliza em um método de serviço. por exemplo

Service.DoSomething(userName);

Agora eu tenho um motivo para fazer isso não no nível da ação, mas no nível do construtor do controlador. Atualmente, estou usando o mapa de estrutura para criar controladores e injetar o serviço. Estou olhando para algo como:

public interface IUserProvider
{
    string UserName { get; }
}

public class HttpContextUserProvider : IUserProvider
{
    private HttpContext context;

    public HttpContextUserProvider(HttpContext context)
    {
        this.context = context;
    }

    public string UserName
    {
        get
        {
            return context.User.Identity.Name;
        }
    }
}

Dito isto, meu IoC foo é realmente fraco, pois este é o primeiro projeto em que o usei.

Então minha pergunta é ... como posso dizer o mapa da estrutura para passar no HttpContext no construtor para HttpContextUserProvider? Isso parece estranho ... Não sei bem como pensar no HttpContext.

questionAnswers(4)

yourAnswerToTheQuestion