5

バックグラウンド タスクを実行するための Windows ランタイム コンポーネントから sqlite データベースへの接続に問題があります。必要なすべての dll を、メイン プロジェクトに追加したのと同じ方法で含めています。しかし、機能しません。200 個のエラーが表示されます.. この投稿に従いました: https://github.com/praeclarum/sqlite-net/issues/104
しかし、それでもエラーが発生します.. 2 つのエラーは次のとおりです。

エラー 2 Windows ランタイム クラス 'SQLite.SQLiteException' に無効な基本型 'System.Exception' があります。カスタム例外タイプのエクスポートは許可されていません。D:\MCM-22-Jan-2013\CCM\TileBackground\SQLite.cs 46 15 タイル背景

エラー 92 タイプ 'SQLite.TableMapping.Column' はネストされたタイプです。入れ子になった型は、Windows ランタイムにエクスポートできません。D:\MCM-22-Jan-2013\CCM\TileBackground\SQLite.cs 1390 16 TileBackground

4

2 に答える 2

4

私は今日この問題に遭遇しました、そしてhttps://github.com/praeclarum/sqlite-net/issues/104の助けを借りて私はそれを解決することができます。基本的に、nugetのsqlite-netをセットアップした後、2つのことを行う必要があります。

  1. SQLite.csおよびSQLiteAsync.csの場合、すべてpublicのクラス定義(5列目)をに変更する必要があります。internal
  2. SQLite名前空間を、C#プロジェクトが使用している名前空間に変更する必要があります。

このようにして、このラッパーはC#コンポーネント/ Windowsランタイムコンポーネントの一部になり、エクスポートされません。

于 2013-02-23T08:24:42.813 に答える
-1

バックグラウンド タスクで Sqlite を正常に使用しています。通常の Windows ストア dll に sqlite-net ソース ファイルがあります。メイン アプリとバックグラウンド タスク プロジェクトの両方が同じ sqlite データベースにアクセスする必要があるため、どちらもこの dll を参照します。

ソース コードをこのように構成することで、(意図せずに) 表示されている問題を回避できたようです。この問題を回避するために Sqlite-net ソース ファイルを微調整する必要はありませんでした。

于 2013-02-11T14:15:31.807 に答える