Injeção de dependência de unidade no provedor de associação personalizado

Tenho o projeto ASP.NET MVC3 onde desejo usar um provedor de associação personalizado. Também quero usar o Unity para resolver minha injeção de dependênci

este código da Global.asax:

    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();

        RegisterGlobalFilters(GlobalFilters.Filters);
        RegisterRoutes(RouteTable.Routes);

        var container = new UnityContainer();
        container.RegisterType<IAuthentification, Authentification>();
        container.RegisterType<IRepository, Repository>();

        DependencyResolver.SetResolver(new UnityDependencyResolver(container));

    }

Este é o código do meu provedor de associação:

public class CustomMembershipProvider : MembershipProvider
{
   [Dependency]
   private IProveaRepository Repository { get; set; }

   public override bool ValidateUser(string username, string password)
    {
       .....
    }

Problem é quando eu coloco o ponto de interrupção no método ValidateUser, vejo que a propriedade Repository não foi inicializada. Mas esta construção:

   [Dependency]
   private IProveaRepository Repository { get; set; }

or exemplo, funciona bem em controladore

Alguém sabe por que é assim e o que fazer?

questionAnswers(3)

yourAnswerToTheQuestion