1

Metro アプリケーションで SQLite を使用してデータベースを作成できません。

説明: SQLite3.dll のロードに失敗すると、実行時例外が引き続き発生します。

観察: データベース ディレクトリがアプリ パッケージの LocalState ディレクトリに作成されないことがわかりました。これを観察した後、実行時に文字通りファイル パスの作成を実装し、意図した場所に sqlite3.dll をドロップしました。

それでも、SQLite3.dll のロードに失敗したという例外が発生します。

  1. SQLite を利用する私の CRUD コードは正常にコンパイルされます。
  2. SQLite の依存関係 (packages.config、SQLite.cs、および sqlite3.dll) は、アプリケーションの実行可能プロジェクトではなく、別のメトロ クラス ライブラリにあります。
  3. sqlite3.dll は ARM プロセッサに基づいています。
  4. sqlite3.dll は Content、Copy Always に設定されています。

コード:

    SQLiteAsyncConnection connection = new SQLiteAsyncConnection(DATABASE_DIRECTORY_NAME);
    return await connection.CreateTableAsync<Service>();

助けてください...

4

1 に答える 1

1

同じエラーが発生しました。その後、プロジェクトのルート フォルダーに sqlite3.dll を配置しました。sqlite3.dll は Content、Copy Always に設定されています。その後、それは機能しています

于 2013-02-06T09:12:24.727 に答える