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;