类型或命名空间名称'实践'在命名空间中不存在' Microsoft' (你错过了一个程序集引用吗?)

时间:2015-06-26 13:36:57

标签: c# visual-studio-2010 enterprise-library

我正在研究一个我想在Visual Studio 2010中构建的遗留项目。

其中一个项目(针对.NET Framework 4)拒绝使用引用的DLL Microsoft.Practices.ServiceLocation(v2.0.50727)。即使引用是正确的,我也会收到此错误 - 即使Intellisense似乎认为它应该可行。这是使用声明:

thisValue

我需要包含其他任何库吗?这是版本问题吗?发生什么事了!?!

1 个答案:

答案 0 :(得分:1)

我在我的一个使用.Net framework 4.0的项目中偶然发现了同样的问题。我所做的是删除任何Microsoft.Unity的引用,并使用nuget使用以下命令重新安装它。

Install-Package Unity -Version 2.1.505.2

以上摘自官方nuget包页面,如下所示。

https://www.nuget.org/packages/Unity/2.1.505.2

问题是,如果你使用Unity版本3.5,那么你应该有.Net framework 4.5,因为它不能在那之下工作。对于.Net framework 4.0,您需要使用上述版本,因为它们彼此兼容。

在这里,由于显示完全关闭的错误消息,微软真的很糟糕。应该有关于兼容性的正确帮助错误消息。

我希望这会有所帮助。