問題タブ [sqlite-net]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - SQLiteAsyncConnection を使用して SQLite-net C# で汎用クエリを作成する
AndroidでMonoを使用してデータベースを実装するためにSQLite-net(https://github.com/praeclarum/sqlite-net)を使用しており、次のものがあります。
これは株式のリストを提供するのに最適ですが、プロジェクトにテーブルのコレクションがあることを想定しており、テーブルごとに個別の AddX、GetAllX、QueryReturns(X) などを作成したくありません。私はこれらのデータベース操作を行う一般的な方法を求めており、次のことを試しました。
ただし、「T」は、ジェネリック型またはメソッド「DatabaseUtility.AsyncTableQuery」でパラメーター「T」として使用するために、パブリックパラメーターなしのコンストラクターを持つ非抽象型である必要があります。
この種の一般的なデータベース アクセスを機能させる方法についてのアイデアはありますか?
c# - where句に日付を含むSQL to LINQクエリが機能しない
LINQ 経由でデータベース アイテムのクエリを実行しようとしましたが、うまくいきません。例外は次のとおりです。
オブジェクト参照がオブジェクト インスタンスに設定されていません。
スタック トレースは、例外自体と同じくらい役に立ちません。
SQLite.TableQuery
1.CompileExpr(Expression expr, List
1 queryArgs) で d:\XX\XX\XX\XX\XX\SQLite.cs:line 2383 で SQLite.TableQuery1.CompileExpr(Expression expr, List
1 queryArgs) で d:\XX\XX\XX\XX\XX\SQLite. cs:SQLite.TableQuery1.CompileExpr(Expression expr, List
1 queryArgs の 2388 行目 d:\XX\XX\XX\XX\XX\SQLite.cs:SQLite.TableQuery1.CompileExpr(Expression expr, List
1 queryArgs の 2308 行目 d:\XX\XX\XX\XX\ XX\SQLite.cs:1.CompileExpr(Expression expr, List
d:\XX\XX\XX\XX\XX\SQLite.cs:1.GenerateCommand(String selectionList) in d:\XX\XX\XX\XX\XX\SQLite.cs:line 2274 at SQLite.TableQuery
d:\XX\ の SQLite.TableQuery 1.GetEnumerator() の2308 行の SQLite.TableQuery 1 queryArgs) の 2308 行XX\XX\XX\XX\SQLite.cs: System.Collections.Generic.List1..ctor(IEnumerable
1 コレクションの 2521 行目)
System.Linq.Enumerable.ToList[TSource](IEnumerable`1 ソース) で Kapital.DataModel.DataManagerOnetimeExpense.<>c__DisplayClass5.b__4() で d:\XX\XX\XX\XX\XX\DataModel\DataManagerOnetimeExpense.cs : d:\XX\XX\XX\XX\XX\SQLite.cs の SQLite.SQLiteConnection.RunInTransaction(Action action) の 47 行
目: Kapital.DataModel.DataManagerOnetimeExpense.RetrieveItems(Int32 month, Int32 year, Boolean isPaid の 906 行目) ) d:\XX\XX\XX\XX\XX\DataModel\DataManagerOnetimeExpense.cs: 39 行目の UnitTestKapital.Database.TestDataManagerOnetimeExpense.TestRetrieveItemsByMonthYearIsPaid() で d:\XX\XX\XX\XX\XX\UnitTestKapital\Database \TestDataManagerOnetimeExpense.cs:154行目
ただし、LINQ クエリは次のとおりです。
次のメソッドが機能しているため、日付には間違いなく何か関係があります(基本的に、日付のない同じメソッド)。
ここで楽しい部分があります。数か月前に WinRT アプリケーションで同じ問題が発生しました。上記と同じ方法でこれを解決することができました。
私はSQLite 3.7.16.2を使用しています。LINQ プロバイダーはsqlite-netです。
ほかに何か?Visual Studio 2012、C#、.Net 4.5。WPF アプリケーションです。
編集: これが私のデータ オブジェクトで、単純な POCO です。PaymentDate は DateTime.Today で初期化されるため、null になることはありません。
Edit2 Gert Arnold は、この回避策を使用することを提案しました。それは機能しており、私が理解している限り、クエリよりも優れたパフォーマンスを発揮します。それにもかかわらず、上記のクエリの何が問題なのか知りたいです。
android - 保存データベースを作成しません
私は monodroid を使用しており、sqlite-net ライブラリを介してデータベースを操作しています。1 つのアプリケーション トランザクションでは、データベースからすべてのデータが正しく送受信されますが、次にアプリケーションをデプロイすると、データベース ファイルが存在しません。
私はこれらのような方法を使用しています
しかし、私はm testing same code in MonoTouch and WP7 application and it
大丈夫です。
質問は、なぜデータベースは常に失われるのですか?
c# - sqlite テーブルの列が表示されない
wp8にはsqlite-netを使用しています。テーブルに行を挿入しようとしていますが、列が存在しないという実行時エラーが発生します。行の直前にブレークポイントを置いてデータベース変数を調べると、テーブルと列が表示されるので、何が起こっているのかわかりません。コードは次のとおりです。