私は単純なデータベースアプリケーションに以下を使用しています:
- SQL Server Compact Edition .sdf ファイルをデータベースとして、int の主キー ID を使用。
- データ アクセス レイヤーとして型指定された DataSet および BindingSource
- データを表示するための DataGridView。
私の問題は、最後に挿入されたレコード/行 ID に問題があることです。ナビゲーター コンポーネントの追加ボタンを使用して datagridview に行を追加すると、新しいレコード/行の ID は -1 になります。TableAdapter.Update() を使用してデータをデータベースに保存した後でも -1 のままです。@@identity または scope_identity() を使用して別のクエリを使用して最後の ID を取得できることはわかっていますが、別のクエリを使用して手動でデータを更新する必要があるとは思えません。ここで何か不足していますか?データベースに保存し、挿入したレコードの ID を取得した後にデータを自動的に更新する方法はありますか?
また、データセット デザイナー -> テーブル アダプター構成 -> 詳細ウィンドウで "データテーブルを更新する" オプションを見ましたが、何らかの理由で無効になっています。でも関係あるのか分からない..
これについて何か助けていただければ幸いです..