Autofac avec MVC4: le contrôleur n'a pas de constructeur par défaut

J'ai travaillé avec Autofac dans MVC3 et de l'amour. Maintenant, je suis en train de la mettre en œuvre avec MVC4.

J'ai installé les pré-versions de Autofac MVC4 et Autofac WebApi via le Gestionnaire de paquets de la Console (Install-Package Autofac.Mvc4 -Pré et Install-Package Autofac.WebApi -Pré)

J'ai ajusté mon conteneur IoC comme suit:

    private static void SetAutofacContainer()
    {
        var builder = new ContainerBuilder();

        builder.RegisterControllers(Assembly.GetExecutingAssembly());
        builder.RegisterApiControllers(Assembly.GetExecutingAssembly());

        builder.RegisterType<UnitOfWork>().As<IUnitOfWork>().InstancePerHttpRequest().InstancePerApiRequest();
        builder.RegisterType<DatabaseFactory>().As<IDatabaseFactory>().InstancePerHttpRequest().InstancePerApiRequest();
        builder.RegisterType<RepositoryWrapper>().As<RepositoryWrapper>().InstancePerHttpRequest().InstancePerApiRequest();
        builder.RegisterType<ServiceWrapper>().As<ServiceWrapper>().InstancePerHttpRequest().InstancePerApiRequest();

        //Repositories
        builder.RegisterAssemblyTypes(typeof(UserRepository).Assembly).Where(t => t.Name.EndsWith("Repository")).AsImplementedInterfaces().InstancePerHttpRequest().InstancePerApiRequest();

        //Services
        builder.RegisterAssemblyTypes(typeof(UserService).Assembly).Where(t => t.Name.EndsWith("Service")).AsImplementedInterfaces().InstancePerHttpRequest().InstancePerApiRequest();

        IContainer container = builder.Build();
        DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
        GlobalConfiguration.Configuration.DependencyResolver = new AutofacWebApiDependencyResolver(container);

    }

Quand je lance l'application (par le biais de l'API contrôleur) - je obtenir de l'exception:
"Contrôleurs.UserController " n'a pas de constructeur par défaut"

Le contrôleur ressemble à ceci:

namespace Controllers
{
[Authorize]
public class UserController : ApiController
{
    private ServiceWrapper _services;

    public UserController(ServiceWrapper services)
    {
        _services = services;
    }

    //GET api/user/{userrequest}
    public IQueryable<User> Get(UserRequest request)
    {
        if (ModelState.IsValid)
        {
          '...
        }  
    } 
}

Suis-je raté quelque chose? N'ai-je pas le droit? Toute aide serait grandement appréciée!

Mise à jour

Mon API contrôleur sont dans un projet distinct dans la même solution. Si je place l'API contrôleur principal de mon projet MVC, il fonctionne. Quelqu'un pourrait-il svp m'éclairer sur la façon d'obtenir de l'Autofac pour enregistrer les contrôleurs d'API dans mon projet d'API?

source d'informationauteur Vocte