8

VS 2012 Express で WP8 アプリを開発しています。Windows Phone と Sqlite-net 用の SQLite をインストールしました。また、参考として Windows Phone 用の SQLite をインポートしました。

ただし、プロジェクトをビルドしようとすると、次のように表示されます。

エラー 1 タイプまたは名前空間名 'Community' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)

エラー 4 型または名前空間名 'Sqlite3' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)

私は何を取りこぼしたか?

4

5 に答える 5

9

USE_WP8_NATIVE_SQLITE を条件付きコンパイル シンボルに追加するのを忘れたと思います。

#if USE_CSHARP_SQLITE
using Sqlite3 = Community.CsharpSqlite.Sqlite3;
using Sqlite3DatabaseHandle = Community.CsharpSqlite.Sqlite3.sqlite3;
using Sqlite3Statement = Community.CsharpSqlite.Sqlite3.Vdbe;
#elif USE_WP8_NATIVE_SQLITE
using Sqlite3 = Sqlite.Sqlite3;
using Sqlite3DatabaseHandle = Sqlite.Database;
using Sqlite3Statement = Sqlite.Statement;
于 2013-03-17T16:01:43.157 に答える
4

私はそれをテストしましたが、Windows Phone 8 と Sqlite では少し問題があるようです。

問題を解決する最初のことは、「Community.Csharpsqlite.WP」参照をアプリに追加することです。これを行うには、Nuget パッケージ マネージャーを開き、「csharpsqlite」と入力して、結果の nuget パッケージをアプリにインストールします。これにより、質問で言及した上記の問題の両方が解決されます。しかし、エイジアンは別の問題を引き起こします。「Community.Csharpsqlite.WP」と「sqlite-net」の SQLite.cs ファイルの間に互換性のないメソッドがいくつかあります。これに対する 1 つの解決策は、SQLite.cs のメソッドを手動で変更して非互換性を解決することです。

または、上記のプロセスがうまくいかない場合は、dotnetslackers リンクに記載されている WP7 sqlite のプロセスを使用してください。これを別のプロジェクトでテストすると、うまくいくはずです。

于 2012-11-28T07:51:36.410 に答える
2

csharpsqliteなしでWindows Phone 8で動作するようになりました。

Peterhuene は、GitHub から入手できる SQLite のラッパーを作成しました。csharpsqlite はもう必要ありません。readme セクションには、必要なすべての情報が含まれています。

設定方法の詳細な説明は、ここCodeProject にもあります。

于 2013-05-26T20:30:42.477 に答える
1

この投稿の指示に従ったと仮定します

投稿には、C++ プロジェクトをSqliteという名前のソリューションに追加するという指示があります。github から取得します。確かに、これは投稿内に非常にうまく隠されているため、見落としがちです。

C++ プロジェクトをソリューションに含めた後、C# プロジェクトから参照を追加する必要があります。

参照を追加 -> 解決策 -> c++ "Sqlite" プロジェクトを選択 参照として

その後、ビルド定数 USE_WP8_NATIVE_SQLITE を追加すると、動作するはずです。

于 2013-10-18T15:26:00.447 に答える
1

SQLite.cs には、そのような行が表示される場所がいくつかあります。

#if USE_CSHARP_SQLITE
...
...
#elif USE_WP8_NATIVE_SQLITE
...
...

#if USE_CSHARP_SQLITE 内のコードを #elif USE_WP8_NATIVE_SQLITE 内のコードに置き換えるだけで準備完了です。または、短い方法もあります。properties->build と after に移動します。「USE_WP8_NATIVE_SQLITE」を追加して、ソリューションを再構築します。これは私のために働いた

于 2014-07-04T17:13:19.043 に答える