让autofac与mvc6 beta5一起使用

我正在尝试使用我正在处理的mvc6应用程序使用autofac。 我发现这篇博客文章似乎有点过时了。 它看起来像使用beta3位

我正在使用这个clr版本

1.0.0-beta5-11911

我的项目有这两个参考

"Autofac": "4.0.0-alpha2", "Autofac.Dnx": "4.0.0-alpha2", 

在文章中讨论了如何修改startup.cs

  // Create the Autofac container builder. var builder = new Autofac.ContainerBuilder(); // Add any Autofac modules or registrations. builder.RegisterModule(new AutofacModule()); // Populate the services. builder.Populate(services); // Build the container. var container = builder.Build(); return container.Resolve(); 

上面的代码抱怨builder.Populate(services); 给我一个错误

“IServiceDescriptor”类型在未引用的程序集中定义。 您必须添加对程序集“Microsoft.Framework.DependencyInjection.IServiceDescriptor,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null”的引用。

从我的研究看起来像beta4 DependencyInjection.IserviceDescriptor被删除。

有没有其他人设法让autofac使用最新的beta5位?

对于任何想要在配置下运行AutoFac的人来说,允许我在beta6中使用它

下面是project.json的片段

  "dependencies": { "Autofac": "4.0.0-beta6-110", "Autofac.Framework.DependencyInjection": "4.0.0-beta6-110", "Microsoft.AspNet.Mvc": "6.0.0-beta6", "Microsoft.AspNet.Server.IIS": "1.0.0-beta6", "Microsoft.AspNet.Server.WebListener": "1.0.0-beta6", "Microsoft.AspNet.StaticFiles": "1.0.0-beta6" }, 

然后是startup.cs的一部分

  public IServiceProvider ConfigureServices(IServiceCollection services) { services.AddMvc(); //create Autofac container build var builder = new ContainerBuilder(); //populate the container with services here.. builder.RegisterType().As(); builder.Populate(services); //build container var container = builder.Build(); //return service provider return container.ResolveOptional(); } 

如@peco所述,请确保你有

 using Autofac.Framework.DependencyInjection 

这让我在AutoFac上得到了通知:)希望这会有所帮助!