我正在关注本教程,但我遇到了为Autofac的配置给出的代码问题。教程中给出的代码如下:
public class AutofacConfig
{
public static void Register(HttpConfiguration config)
{
var builder = new ContainerBuilder();
builder.RegisterControllers(typeof(WebApiApplication).Assembly);
builder.RegisterApiControllers(typeof(WebApiApplication).Assembly);
builder.RegisterType().AsImplementedInterfaces().InstancePerApiRequest().InstancePerHttpRequest();
var container = builder.Build();
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
GlobalConfiguration.Configuration.DependencyResolver = new AutofacWebApiDependencyResolver(container);
}
}
当我将此代码复制到我的MVC项目中时,我在这一行得到一个编译错误:
builder.RegisterType().AsImplementedInterfaces().InstancePerApiRequest().InstancePerHttpRequest();
抛出的异常是:
Error 1 The type arguments for method 'Autofac.RegistrationExtensions.RegisterType<TImplementer>(Autofac.ContainerBuilder)' cannot be inferred from the usage.
我已经使用NuGet安装了Autofac 3.1.1 版。我猜自编写教程以来Autofac API 发生了一些变化,但我从未使用过Autofac,所以不知道如何解决这个问题。