2016-11-03 102 views
1

Frank A. KruegerのSQLite.net PCLで足を濡らしています。私はそれをAndroidアプリケーションとASP.NET MVC Webアプリケーションの共通データレイヤーとして使用しようとしています。私はAndroidの使用にいくつかの成功を収めているが、Webアプリケーションのためにそれを使用しようとしている中で、私は次の例外を取得:だからASP.NET MVCでSQLite.net PCLを実行できません

You need to call SQLitePCL.raw.SetProvider(). If you are using a bundle package, this is done by calling SQLitePCL.Batteries.Init().

を、私は右と一緒に、私のコントローラのコンストラクタでこのInit関数を呼び出しますデータベースの初期化: - 私はCombineを呼び出して、次の行だけでなく、それにブレークポイントを設定し、第二はせずにヒットした

SQLitePCL.Batteries.Init(); 

var dbPath = Path.Combine(Constants.DataDir, "SdgData.sqlite3"); 
var sqliteConnection = new SQLiteConnection(dbPath); 
var sdgSqlRepository = new SdgSqlRepository(sqliteConnection); 
crm = new CrmManager(sdgSqlRepository); 

しかし、それも呼び出されていないInitかのように思えます最初に注目されています。 (おそらくInitがPCLライブラリ呼び出しでASP.NETプラットフォームには適用できない可能性があります)

ASP.NET WebアプリケーションでSQLite.net PCLを実行する方法はありますか別のデータソースの場合

+0

によってそれを修正同じ問題がありますか?そこにはあまりにも多くの方法があります。 – Searching

+0

Frank A. Krueger - https://github.com/praeclarum/sqlite-net – NargothBond

答えて

0

SQLitePCLRawバンドルの1つをプロジェクトに追加しようとしましたか?

これは、それ自体がSQLite-netを参照するポータブルプロジェクトを参照するUWPプロジェクトをビルドするときに必要であることを発見しました。 Batteries.Init()への呼び出しを実行するには、ソリューション内の両方のプロジェクトにSQLitePCLRawバンドルが必要でした。

例外メッセージにこの設定の手掛かりがあります。

関連する問題