我有一个用Visual Studio 2010构建的WCF数据服务项目,运行良好。突然,它不再编译了。它给我的信息是:

Error 7 The type or namespace name 'Services' does not exist in the namespace 'System.Data' (are you missing an assembly reference?) C:\U...s\Visual Studio 2010\Projects...\DataService.cs ... Error 8 The type or namespace name 'Linq' does not exist in the namespace 'System' (are you missing an assembly reference?) DependencyResolver.cs 3 14 Error 10 The type or namespace name 'Web' does not exist in the namespace 'System.ServiceModel' (are you missing an assembly reference?) Error 12 The type or namespace name 'DataService' could not be found (are you missing a using directive or an assembly reference?)

我该怎么解决呢?


当前回答

我得到了一个非常类似的错误消息,这是由于无意中在我的解决方案的另一个项目中创建了一个类的副本而引起的。删除副本解决了这个问题

其他回答

我最近需要做一个系统还原,它导致我的几个文件改变/消失,我一直在恢复工作。其中一些是DLL文件。我使用源代码控制来检索整个项目,但我仍然遇到了类似的问题。我找到了这个答案,描述了您可能需要删除一个DLL并读取它来修复您的错误。这就是我的情况。

删除WebMatrix。WebData和读取它以及在WebMatrix中添加。数据修正了我的类型或命名空间名称“数据”不存在命名空间“WebMatrix”....的错误

我的系统出了点问题。Linq没有被认出来。using语句有一个红色的、弯弯曲曲的等等。我解决这个问题的方法是将我的网站更改为目标dotnet 3.5,然后切换回原来的目标框架(在我的情况下是4.0)。

我在System.Data.SQLite中也遇到了同样的问题。问题的根源是您所使用的dll应该与您的项目具有相同的. net版本。

例如,如果你在。net 4.5上使用了SQLite(在我的情况下),那么你的平台目标也应该是。net 4.5。

您可以通过以下方式找到平台目标:项目>(项目名称)属性> Build。

如果所有这些都失败了,比如确保目标框架是相同的,并且你在VS2010中处理WPF类库,只需重新启动Visual Studio。这对我很有帮助。

我在使用Visual Studio的Git集成管理项目时遇到了这个问题。出于某种原因,Windows Phone 8项目在针对x86时编译得很好,但当我将其设置为针对ARM时,它会编译失败,并提示“Advertising”不存在于Microsoft命名空间中。

我最终通过删除Microsoft.Advertising.*.dll引用并重新添加它来解决这个问题。