Asp.net mvc Autofac Azure移动服务集成问题

Asp.net mvc Autofac Azure移动服务集成问题,asp.net-mvc,autofac,asp.net-web-api2,azure-mobile-services,Asp.net Mvc,Autofac,Asp.net Web Api2,Azure Mobile Services,我得到“…确保控制器有一个无参数的公共构造函数autofac…” 我的控制器: public class AccountController : ApiController { private IAccountService _accountService; public AccountController(IAccountService accountService) { _accountService = accountService; }

我得到“…确保控制器有一个无参数的公共构造函数autofac…”

我的控制器:

public class AccountController : ApiController
{
    private IAccountService _accountService;

    public AccountController(IAccountService accountService)
    {
        _accountService = accountService;
    }
    ...
}
protected void Application_Start()
{
    var builder = new ContainerBuilder();

    var config = GlobalConfiguration.Configuration;
    builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
    builder.RegisterType<AccountService>().As<IAccountService>().InstancePerRequest();
    var container = builder.Build();

    config.DependencyResolver = new AutofacWebApiDependencyResolver(container);
}
我的自动传真配置:

public class AccountController : ApiController
{
    private IAccountService _accountService;

    public AccountController(IAccountService accountService)
    {
        _accountService = accountService;
    }
    ...
}
protected void Application_Start()
{
    var builder = new ContainerBuilder();

    var config = GlobalConfiguration.Configuration;
    builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
    builder.RegisterType<AccountService>().As<IAccountService>().InstancePerRequest();
    var container = builder.Build();

    config.DependencyResolver = new AutofacWebApiDependencyResolver(container);
}

我自己修好了。事实上,问题在于项目是Azure移动服务。 这是我第一次使用它,我已经像以前那样为WebApi配置了它。但正如我上次在谷歌上搜索这个基于OWIN的项目类型后所理解的那样。 这是一篇关于以下方面的好文章:

所以它应该是这样的:

 ConfigOptions options = new ConfigOptions();

 ConfigBuilder builder = new ConfigBuilder(options, (httpConfig, autofac) =>
 {
         autofac.RegisterInstance(new MyService()).As<IMyService>();
 });

 HttpConfiguration config = ServiceConfig.Initialize(builder);
ConfigOptions=newconfigoptions();
ConfigBuilder=新的ConfigBuilder(选项,(httpConfig,autofac)=>
{
autofac.RegisterInstance(new MyService()).As();
});
HttpConfiguration config=ServiceConfig.Initialize(生成器);

您是否安装了Web API集成“Autofac.WebApi”nuget软件包?@MilenPavlov是的,当然@MilenPavlov我已经添加了内部异常消息,可能会有帮助:)您可以在此处显示AccountService的构造函数吗?您可以尝试此行以注册控制器生成器。RegisterApicController(typeof(AccountController).Assembly); ?