【问题标题】:Could not load file or assembly 'System.Data.SQLite, Version=1.0.65.0无法加载文件或程序集'System.Data.SQLite,版本 = 1.0.65.0
【发布时间】:2011-03-24 06:25:46
【问题描述】:

虽然here 这个问题有答案,但是情况有所不同。例如,在一个应用程序中 System.Data.SQLite 完美运行,而在这个应用程序中,在以下行继续抛出此异常:

 SQLiteSync.SqliteClientSyncProvider clientSyncProvider = new SQLiteSync.SqliteClientSyncProvider(connString);

我也检查了路径,以避免 I/O 异常。 任何线索可能会抛出这个?

【问题讨论】:

  • 你检查过 dll 是否真的存在?
  • 两次。并删除它并再次添加它以确保。
  • 使用 fuslogvw.exe 解决此问题。

标签: c# sqlite


【解决方案1】:

我知道的最常见的原因是 SQLite 仅提供 x86 版本,人们在 x64 位机器上运行它,但它不喜欢它。

您可以通过将构建设置从“Any CPU”更改为“x86”来解决此问题(如果您有此问题)。这可以解释为什么它可以在一个应用程序中运行,而不能在另一个应用程序中运行 - 如果一个在 x86 中运行良好,而一个在 x64 中运行并导致此错误。

【讨论】:

  • 即使我确实按照您的建议更改了设置,问题仍然存在。令我印象深刻的是 Sqlite 在另一个具有相同设置的项目中完美地工作(甚至没有将 CPU 设置为 x86),但在这种情况下不是。我的猜测是它与 sqlitesync 有关...
  • 不作为。我发现如果在 Windows XP 上未安装 Visual C++ 可再发行组件,也会发生此问题。
猜你喜欢
  • 1970-01-01
  • 2013-08-13
  • 1970-01-01
  • 1970-01-01
  • 2013-11-07
  • 1970-01-01
  • 2017-10-15
  • 2020-05-09
  • 2018-10-04
相关资源
最近更新 更多