【问题标题】:The type or namespace name 'SQLite' does not exist in the namespace 'System.Data' (are you missing an assembly reference?)命名空间“System.Data”中不存在类型或命名空间名称“SQLite”(您是否缺少程序集引用?)
【发布时间】:2013-08-24 13:32:16
【问题描述】:

是的,我已将 System.Data.Sqlite.dll 添加到我的项目(VS2012)中。 是的,我添加了一个参考。 是的,我已经仔细检查过,参考已经创建(参考属性>路径是正确的)。 是的,我用过谷歌,必应,

不,我不知道为什么我的代码无法编译。

【问题讨论】:

  • 已经重建了吗? BTW +1 在这里使用Bing :)))
  • 在重建前进行清理。
  • 大声笑,我确实清理并重建了。如果我没有,我不会在这里发帖。
  • 我的网站面向 .NET 4.0。我也收到了你的错误。在属性页中改为定位4.0.3,错误消失了。

标签: c# sqlite dll visual-studio-2012 reference


【解决方案1】:

如果是使用 nuget 安装的,请在包管理器控制台中执行以下命令:

Update-Package –reinstall System.Data.SQLite

在VS2013中,你可以在菜单View > Other Windows > Package Manager Console中找到这个控制台。

如评论中所述,如果您的项目在安装软件包时配置为使用 Net45,并且在您将其配置为使用 Net40 一段时间后,则会发生此错误。

我猜想相反的情况,Net40 到 Net45 的配置,也可能会抛出这个错误。

【讨论】:

  • 另外值得注意的是,SQLite 可能一开始就没有安装。如果上述命令返回红色文本,表明“SQLite 包未安装在任何项目中”并且更新失败,则只需从工具 > NuGet 包管理器转到管理 NuGet 包以获取解决方案并搜索 System.Data.SQLite。然后选择包并为此项目安装它。我这样做了,错误消失了。
【解决方案2】:

看起来您引用的 System.Data.Sqlite.dll 版本不正确,与您在应用程序中使用的 .NET 版本不兼容。

尝试从http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki安装正确的一个

【讨论】:

  • 这是我的正确答案。我有一个 .NET 4.5 的程序集,我通过 NuGet 安装了 SQLite。然后我将程序集更改为 .NET 4.0,SQLite 引用给了我 OP 的错误。
【解决方案3】:

我也有同样的情况。 我检查了引用的 SQLite dll 的属性和一个抛出错误的版本,它是 1.0.92.0 我用正确的 1.0.90.0 之一替换了它,现在它正在工作

令人惊讶的是 1.0.92.0 正在使用 Web 项目,但没有使用 VS2013 的类库或 WCF 库 prj?

【讨论】:

    【解决方案4】:

    检查引用的 dll 是否与项目的目标平台匹配。 例如:如果您使用的是 4.0 程序集和一个针对 4.5 的项目,那么您将收到此错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-14
      • 2017-05-04
      • 2018-07-15
      • 2015-05-18
      • 2021-08-12
      • 2021-07-27
      • 2012-07-26
      相关资源
      最近更新 更多