天天看點

[C#] - 使用SQLite 無法加載 DLL“SQLite.Interop.dll 找不到指定的子產品

場景

最近弄個新項目,需要用到ORM。基本就是VS2017+C#+Dapper+Sqlite這樣的結構。從Nuget上下載下傳相關的package,并關聯好對應的資料結構。編譯通過,但在運作時報錯。如下圖:

[C#] - 使用SQLite 無法加載 DLL“SQLite.Interop.dll 找不到指定的子產品

檢視了下,packages目錄下對應的System.Data.SQLite,System.Data.SQLite.Core檔案内容都在,SQLite.Interop.dll也在。但就是沒有生成到執行目錄下。很費解。

解決方案

注意了下SQLite.Interop.dll所在目錄,System.Data.SQLite.Core.1.0.109.1\build\net46下存在X64,X86兩個檔案夾。想到了項目工程編譯選項設定的原因。于是:

[C#] - 使用SQLite 無法加載 DLL“SQLite.Interop.dll 找不到指定的子產品

根據需求選擇對應的x86或x64,将會複制對應目錄下的SQLite.Interop.dll至執行目錄。成功運作。

錯誤很小,但希望能幫到更多的人。

繼續閱讀