我有使用SQLite的C#应用程序。它已经有效了,但我一直在玩它,它不再有效,我不知道出了什么问题: - /
它编译好但我有问题“无法加载'System.Data.SQLite.dll'或其中一个依赖项(在非开发机器上)。这是一个在安装过程中启动的服务,因此安装因此错误而失败
所以我添加了System.data.sqlite引用。我必须注意解决方案资源管理器中不再有“x86”和“x64”: - /
包管理器控制台显示已安装:
PM> Install-Package System.Data.Sqlite
Attempting to resolve dependency 'System.Data.SQLite.Core (≥ 1.0.94.0)'.
Attempting to resolve dependency 'System.Data.SQLite.Linq (≥ 1.0.94.1)'.
Attempting to resolve dependency 'System.Data.SQLite.EF6 (≥ 1.0.94.0)'.
Attempting to resolve dependency 'EntityFramework (≥ 6.1.1.0)'.
'System.Data.SQLite 1.0.94.1' already installed.
QLog already has a reference to 'System.Data.SQLite 1.0.94.1'.
PM>
我把它添加到WXS:
(...)
<Component Id="System.Data.SQLite.dll" Guid="{BCA7E1B7-CA34-4B1C-829F-29D4F135912E}">
<File Id="System.Data.SQLite.dll" Source="..\QLog\bin\x86\Release\System.Data.SQLite.dll" Vital="yes" KeyPath="yes" DiskId="1"/>
</Component>
<Directory Id='dir_x86' Name='x86'>
<Component Id='x86' Guid='{C2869DAC-B3CC-4E87-AEF2-74F76025CFD9}'>
<CreateFolder />
<File Id='x86' Name='SQLite.Interop.dll' Source='..\QLog\packages\System.Data.SQLite.Core.1.0.94.0\build\net45\x86\SQLite.Interop.dll' />
</Component>
</Directory>
<Directory Id='dir_x64' Name='x64'>
<Component Id='x64' Guid='{452F3E46-B1E6-4A5A-B2CB-C7DA9B7EAB51}'>
<CreateFolder />
<File Id='x64' Name='SQLite.Interop.dll' Source='..\QLog\packages\System.Data.SQLite.Core.1.0.94.0\build\net45\x64\SQLite.Interop.dll' />
</Component>
</Directory>
(...)
解决方案资源管理器中没有“x64”和“x86”文件夹,因为它们在教程中,但我可以在“参考”下看到system.data.sqlite(图像信誉不足)。
我甚至尝试将sqlite-netfx45安装到部署机器上,但它也无济于事。
有什么想法吗? : - /
答案 0 :(得分:1)
我必须注意,没有&#34; x86&#34;和&#34; x64&#34;在解决方案资源管理器中: - /
应用程序部署,如下所示:
答案 1 :(得分:0)
我发现了问题。新版本不需要在构建项目时指定x86目标。只需选择AnyCPU。