2016-03-23 5 views
1

Dies ist eine Folgefrage vondas Paket von dotConnect für SQLite funktioniert nicht für 64-Bit-C# -Projekt in VS2013?

http://stackoverflow.com/questions/36166266/sqlite3-dll-cannot-be-used-in-c-sharp-application-in-vs2013-on-win-7/36169278#36169278 

I dotConnect.Express.for.SQLite von

https://www.nuget.org/packages/dotConnect.Express.for.SQLite/

Nun, für die C# -Projekt von 32 Bit installiert, es funktionierte. Aber für x64, bekam ich Fehler:

An unhandled exception of type 'System.IO.FileLoadException' occurred in XMR.UserModel.dll 

    Additional information: Could not load file or assembly 'Devart.Data.SQLite, Version=5.2.457.0, Culture=neutral, PublicKeyToken=09af7300eec23701' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 

es scheint, dass .net eine x64-Version benötigt, aber die installierte "dotConnect" ist 32 Bit?

Irgendwelche Vorschläge?

Antwort

1

dotConnect für SQLite-Baugruppen werden mit der Option/platform: anycpu erstellt. Daher können Sie die Assemblys des Providers auf jeder Plattform (x86 oder x64) verwenden. Weitere Informationen finden Sie unter http://msdn.microsoft.com/en-us/library/zekwfyz4.aspx.

Sie müssen jedoch sicherstellen, dass Sie die kompatible Version der Engine-Bibliothek sqlite3.dll verwenden. Die Engine-Bibliotheksversion der richtigen Kapazität wird während der Installation von Desktop dotConnect for SQLite bereitgestellt. Um beide Versionen (x86 und x64) von sqlite3.dll zu erhalten, installieren Sie bitte den Desktop dotConnect for SQLite Express von https://www.devart.com/dotconnect/sqlite/download.html. Standardmäßig setzt der Installation diese Dateien hier:

  • C: \ Program Files (x86) \ Devart \ dotConnect \ SQLite \ sqlite3.dll

  • C: \ Program Files (x86) \ Devart \ dotConnect \ SQLite \ x64 \ sqlite3.dll

bei der Bereitstellung, erstellen sie einen Ordner mit dem Namen "x86" (ohne Anführungszeichen) oder "x 64" (ohne Anführungszeichen) ein und legen sie sie in den Ordner mit Montage Ihrer Anwendung. Es ist der erste Ort, an dem dotConnect for SQLite nach sqlite3.dll sucht.