0

このコードが機能しないのはなぜですか?

        (this.namesBindingSource.Current as DataRowView).Delete();         
        this.namesTableAdapter.Update(database1DataSet1);

エラー : 行が削除された DataRow コレクションが渡された場合、Update には有効な DeleteCommand が必要です。

データベースは、プロジェクトに追加されたサービスベースのデータベースで、dataGridView に表示されるテーブルが 1 つだけで、このコードはボタンにリンクされています。行をクリックして削除し、ボタンを押すとエラーが発生します....

なにが問題ですか?気が狂いそう……

4

2 に答える 2

2

エラーメッセージは一目瞭然です。の有効な が必要DeleteCommandですnamesTableAdapter。そうしないと、「削除された」行を削除することを認識できません。Updateまたはについても同様ですInsert-Commands

Delete()を変更するだけRowStateです。DataAdapter(または)を使用する場合、状態がまたはTableAdapterの場合に何をすべきかを知る必要があります。DeletedModified

方法: TableAdapter クエリを作成する

于 2013-01-10T10:19:53.460 に答える
0

使用CommandBuilderしますが、キー列を含むテーブルを使用する必要があることに注意してください。

于 2013-01-10T10:35:49.703 に答える