C#使用带关系的BindingSource更新多个表

时间:2012-10-27 09:08:57

标签: c# updates bindingsource

我有一个名为“Devis”的父表及其名为“LigneDevis”的子表,我想使用devisBindingSource和ligneDevisBindingSource将数据插入到两个表中,这里是更新代码:

private void devisBindingNavigatorSaveItem_Click(object sender, EventArgs e)
    {            
        this.Validate();            
        this.devisBindingSource.EndEdit();            
        this.ligneDevisBindingSource.EndEdit();            
        this.tableAdapterManager.UpdateAll(this.dBDataSet);                        
    }

当我尝试在两个表中插入新行时,发生错误:

  

System.Data.SqlServerCe.SqlCeException未处理     Message = Impossible d'insérerunevaleurdecléétrangère,car il n'existe pas de valeurdecléprimaryire。 [外键约束名称= Ligne_Devis]

我的问题是:是否有解决外键约束问题的解决方案? 感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用DataSet属性忽略EnforceConstraints的外键约束。

DataSet.EnforceConstraints = false;

http://msdn.microsoft.com/en-us/library/system.data.dataset.enforceconstraints.aspx