Ninject .NET 4.0

6

你能在VS2010 RC1中使用Ninject 2.0吗?

2个回答

13

我曾经遇到过类似的问题,试着将目标设置为完整的.NET 4框架,而不是客户端框架。

据我所知,System.Web在.NET 4中可用,但并不在.NET 4客户端框架中。因此,在您利用针对3.5 sp1编译的完整Ninject的程序集中,需要确保它们不是针对.NET 4客户端框架,而是针对完整的.NET 4框架,以便满足对System.Web的依赖。


7

即使编译为.NET 3.5,该程序集也应能在.NET 4中运行。这里有一张不错的图片


只有当项目的目标框架设置为.NET 4.0时才会这样做。如果没有这个,我会收到错误消息:引用的程序集“Ninject”无法解析,因为它依赖于“System.Web,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”,而该程序集不在当前的目标框架“.NETFramework,Version = v4.0,Profile = Client”中。请删除对未在目标框架中的程序集的引用,或考虑重新定位您的项目。 - mgamer
1
看起来你正在使用一个针对.NET 3.5的项目编译的Ninject版本,而该版本是针对.NET 4编译的。这是不可能的。请下载一个针对.NET 3.5编译的Ninject版本。 - Darin Dimitrov
System.Web的问题在于它使用的是客户端配置文件,其中没有可用的dll。默认情况下,Ninject编译时会针对System.Web.dll进行编译。如果需要,您可以使用NO_WEB选项进行编译。 - Ian Davis

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接