2 つdatagridview
あり、1 つは親レコードを示し、もう 1 つは子レコードです。
カスケード更新および削除ルールと階層更新を true に設定して、リレーションと外部キー制約をデータセットに定義しました。
親のレコードを削除し、その子レコードを削除したいdatagridview
。私のコードの下:
private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)
{
DialogResult res = MessageBox.Show("Sicuro", "Attenzione", MessageBoxButtons.YesNo);
if (res == System.Windows.Forms.DialogResult.Yes)
{
try
{
//parent table
pianoDiInterventoBindingSource.RemoveCurrent();
//child table
pianoInterventoServiziBindingSource.EndEdit();
pianoDiInterventoBindingSource.EndEdit();
tableAdapterManager.UpdateAll(this.archivioDataSet);
}
catch
{
}
finally
{
this.pianoDiInterventoTableAdapter.Fill(this.archivioDataSet.PianoDiIntervento);
this.pianoInterventoServiziTableAdapter.Fill(this.archivioDataSet.PianoInterventoServizi);
}
}
}
親レコードは削除できましたが、子レコードは削除できなかったので、constraintexception error
.
どうしてこれなの?