我得到一个:

找不到类型或名称空间名称

错误的c# WPF应用程序在VS2010。这部分代码编译得很好,但突然就出现了这个错误。我已经尝试删除项目引用和using语句,关闭VS2010并重新启动,但我仍然有这个问题。

有什么想法,为什么这可能会发生,似乎我在做正确的事情re Reference & using语句?

我还注意到在VS2010,智能感知的名称空间是工作的好,所以它似乎VS2010有项目引用,是看到名称空间在一方面,但在编译期间没有看到它?


当前回答

我在试图以代理的身份在本地机器上运行Visual Studio Team Services构建时遇到此错误。

它在我的常规工作空间中工作得很好,我能够在本地代理文件夹中打开SLN文件,一切都编译好了。

有问题的DLL存储在项目中Lib/MyDLL.DLL,并在csproj文件中引用此DLL:

<Reference Include="MYDLL, Version=2009.0.0.0, Culture=neutral, PublicKeyToken=b734e31dca085caa">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>Lib\MYDLL.dll</HintPath>
</Reference>

结果是,尽管有提示路径,它还是找不到文件。我认为msbuild可能是相对于SLN文件而不是项目文件。

在任何情况下,如果您得到的消息是无法解析此引用。无法定位程序集,请确保DLL位于msbuild可访问的位置。

我有点作弊,发现一条消息说“参考\bin\xxx.dll”,然后把dll复制到那里。

其他回答

在我的情况下,我卸载项目,然后:

Opened myProject.csproj and update the ToolsVersion="4.0" to ToolsVersion="12.0"(I'm using vs 2017)(using Paulus's answer https://stackoverflow.com/a/64552201/1594487). Deleted following lines from the myProject.csproj: <Import Project="..\packages\EntityFramework.6.4.0\build\EntityFramework.props" Condition="Exists('..\packages\EntityFramework.6.4.0\build\EntityFramework.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />

问题解决了。

对于那些在试图将网站发布到Azure时遇到这种错误的人来说,上面这些看起来很有希望的解决方案都没有帮助到我。我也在同一条船上——我的解决方案本身构建得很好。最后我不得不这么做

把我溶液里的鸡块都去掉。 关闭并重新打开我的溶液。 重新添加所有的nuget包。

有点痛苦,但这是我能让我的网站发布到Azure的唯一方法。

它甚至发生在Visual Studio 2017中。

重启Visual Studio 无法构建的干净项目。 重新构建项目。

这个方法对我很管用。在定义了类名的类中,例如:公共类ABC,删除一个字符并等待一会儿。您的错误列表将增加,因为您更改了名称。现在把输入的字符放回去。这对我有用,希望对你也有用。祝你好运! !

我的情况和这里讨论的一样,但在我移除系统之前没有解决它。来自引用列表的核心引用(没有它一切都可以正常工作)

希望这能帮助到一些人,因为这个问题很令人沮丧