このチュートリアルに従っていますが、 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を使用したことがないため、これを修正する方法がわかりません。