C# Visual Studio 2010--是否缺少using指令或程序集引用?

C# Visual Studio 2010--是否缺少using指令或程序集引用?,c#,vb.net,visual-studio,visual-studio-2010,C#,Vb.net,Visual Studio,Visual Studio 2010,当我在Visual Studio项目中添加对dll的引用时,我可以使用它,但是当我编译代码或尝试运行它时,我得到一个错误,您是否缺少using指令或程序集引用?错误。我能够确认我的名称空间具有正确的using语句,并且能够确认dll已正确加载。 有人知道我在这件事上有什么不对吗 转到“项目设置”,确保您没有编译包含文本“客户端配置文件”的.net版本的项目。DLL的位置很重要。 如果将本地计算机上的引用添加到Visual Studio解决方案之外的DLL,则不必将其复制到解决方案文件中(取决于解

当我在Visual Studio项目中添加对dll的引用时,我可以使用它,但是当我编译代码或尝试运行它时,我得到一个错误,您是否缺少using指令或程序集引用?错误。我能够确认我的名称空间具有正确的using语句,并且能够确认dll已正确加载。
有人知道我在这件事上有什么不对吗

转到“项目设置”,确保您没有编译包含文本“客户端配置文件”的.net版本的项目。

DLL的位置很重要。

如果将本地计算机上的引用添加到Visual Studio解决方案之外的DLL,则不必将其复制到解决方案文件中(取决于解决方案/项目的类型)

如果这是您的问题,那么您需要将DLL放在另一台计算机上的同一路径中,或者将其复制到您的解决方案中,以便将其与解决方案文件一起部署,并更改引用


您也可以使用生成指令来处理此问题,但这可能超出您目前的期望。

很可能您的dll正在引用客户端项目未引用的另一个dll,并且您的dll代码正在向客户端代码公开第三个dll的类型或接口


如果您发布准确的消息,我们将能够提供更好的帮助。

您使用的是.net 4.0吗


如果是,则此dll可能与.net 4.0不兼容。我刚刚遇到了一个类似的问题,即使这是一个旧问题,但我认为我会将我的2c添加到修复它的内容上,因为其他答案都没有帮助:

无论出于何种原因,当我自上而下构建解决方案时,某个dll没有得到更新,也没有输出包含更改代码的内容。因此,虽然我的解决方案没有可见的错误,但当您尝试构建时,它仍在引用旧的dll并开始抱怨

这只是一个直接重新构建有问题的项目的例子,之后它选择了最新的dll并愉快地构建


这似乎是一个奇怪的意外,因为在它工作/不工作之间没有任何配置发生变化。

在我的例子中,主项目(WinForm)配置为框架目标:FW 4.0“客户端配置文件”。我改为FW4.0,工作得很好!!。
第一次我查看引用的项目,它们还可以,但de-main项目不行。我希望这有帮助。谢谢。

有时,只需重新生成解决方案。

在我的例子中,在通过问题项目上的“管理NuGet软件包”上下文菜单添加对Microsoft BCL构建组件的引用后,此编译错误消失

以前:我让projectmain(控制台应用程序)引用projecta(类库)。 项目A依赖于Microsoft BCL生成组件

之后:我开始重构,在那里我挑选了几个类到单独的新项目中。它也依赖于A。但是编译错误发生在projectnew上,就好像没有引用New->A一样(尽管visualstudio没有突出显示编译错误列表中列出的据称未找到的接口和类)

所以我检查了项目A的依赖项,发现有Microsoft BCL构建组件。 将它添加到New的依赖项后,一切都很好。 最有趣的是Main没有包含这个依赖项,它不需要它


希望这能有所帮助。

您只需再次检查该类文件的名称空间……它会起作用。

我敢打赌,除了那句话之外,错误还说明了其他问题。想完整地展示一下吗?也许还有一些代码?你知道,心灵调试并不容易。你用的是什么语言?C#或VB.NET?你能给我们提供更多的细节吗?相关行是dll中的using语句吗?我收到了相同的错误。我只是将那个特定引用的Copy-Local属性设置为true,错误就消失了。给它一个try@Martinho费尔南德斯,我不同意。这是在引用非客户端配置文件第三方dll时为客户端配置文件框架编译项目的症状。这是你唯一的错误。正如OP所解释的那样,在第一次编译之前,代码完成通常都可以正常工作。然后,您可以删除对dll的引用,再次添加它,内置的VS语法检查器将不会抱怨,直到您点击ctrl+shift+b.@Martinho,关于文本的确切措辞,您可能是对的。打赌文字“我可以使用它,但当我编译…”让我认为这是问题的马上。我张贴的消息是确切的消息。我是否需要将第三个dll添加到客户端代码中才能使其工作?您可以尝试一下,看看这是否有帮助。类库引用了我在编译下载时获得的动态运行库dll。我遇到了类似于非托管dll的问题。我得到了相同的错误-引用它没有问题,使用语句,然后,运行它后得到了与您在这里显示的相同的消息。在将项目降级到.NET3.5之后,我能够使它工作。我确信它不是为客户概要文件编译的。当我注意到这个问题时,这是我确定的事情之一。它是为.NET4.0框架编译的。我确实检查了动态运行库dll是否也为.NET 4.0编译。注释怎么能说这不是解决方案,但这是公认的解决方案?在C#project中,框架选项可以在项目属性-->应用程序-->目标框架中找到。在VB.Net中,可以在项目属性-->编译-->高级编译选项-->目标框架中找到它。我也有这个问题。我在解决方案顶部节点中添加了dll引用。我可以在12楼进入教室。但在建筑时,我发现了错误。你提到了路。但我不知道该怎么办。能够