C# Ninject与MVC4-绑定bin文件夹中的所有程序集

C# Ninject与MVC4-绑定bin文件夹中的所有程序集,c#,asp.net-mvc-4,dependency-injection,ninject,C#,Asp.net Mvc 4,Dependency Injection,Ninject,我跟随这篇文章来创建一个新的应用程序。一旦安装了ninject,它会说添加以下内容: var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "bin"); kernel.Bind(a => a.FromAssembliesInPath(path).SelectAllClasses().BindDefaultInterface()); 但是,当我执行此操作时,会出现以下错误: 无法将lambda表达式转换为类型“Sy

我跟随这篇文章来创建一个新的应用程序。一旦安装了
ninject
,它会说添加以下内容:

var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "bin"); 
kernel.Bind(a => a.FromAssembliesInPath(path).SelectAllClasses().BindDefaultInterface());
但是,当我执行此操作时,会出现以下错误:

无法将lambda表达式转换为类型“System.type[]”,因为它是 不是委托类型


这很公平,我理解这个错误,但我不知道如何避免它。ninject中是否发生了导致此错误的更改?如果您能给我一些建议,我将不胜感激。

签名为
Bind的
Bind
方法(此IBindingRoot内核,操作配置)
(本文中使用的)在Ninject.Extensions.convention插件中的
Ninject.Extensions.Conventions
命名空间的
ExtensionsForIKernel
类中声明为扩展方法

因此,您缺少使用语句的正确的

将此行添加到
NinjectWebCommon.cs
文件中,以编译代码:

using Ninject.Extensions.Conventions;