0

Windows8 アプリケーションで (Linq2IndexedDB ナゲットを介して) IndexedDB を使用して、ローカル ストレージを処理しています。ローカル データベースに挿入された最後の自動インクリメント ID (mysql_insert_id に相当) を取得する必要があります。どうすれば続行できますか?

次の方法でレコードを取得します。

db.linq.from("favoriteSearches").select().then(function(searches) {
    // ....
});

しかし、検索ではキーの痕跡がありません。

4

1 に答える 1

2

オブジェクト ストアに keyPath がある場合、オブジェクトには、キー パスで定義されたプロパティにキーが含まれます。

データベース構成を定義していない場合、linq2indexeddb は自動生成モードで実行されます。これは、必要なときにオブジェクト ストアとインデックスが作成されることを意味します。これが当てはまり、オブジェクト ストアが自動作成される場合、オブジェクト ストアのキーパスは「Id」であり、返されるデータで「Id」プロパティのキー値を見つける必要があります。

編集:linq2indexedDB lib 1.0.13の最新バージョンを使用すると、データを挿入するときにキーが元に戻ります

db.linq.from("favoriteSearches").insert(data).then(function (args){ 
    var key = args.key;
    var data = args.data;
})
于 2012-08-14T16:42:46.323 に答える