throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
这是我尝试更新行时遇到的错误。 我使用外键从另一个表中获取类型ID。当我更新它时,我得到了错误。更新名称就可以了。
这是我用来更新的代码。
hetVoer.Naam = NaamTekst.Text;
hetVoer.TypeId = Convert.ToInt32(TypeTekst.SelectedValue);
hetVoer.Prijs = Decimal.Parse(PrijsTekst.Text);
var item = (Voer)VoerTekst.SelectedItem;
var delItem = from Voer in db.Voers
where Voer.Vid == item.Vid
select Voer;
db.Voers.DeleteOnSubmit(item);
db.Voers.InsertOnSubmit(hetVoer);
db.SubmitChanges();
我正在使用C#。
答案 0 :(得分:1)
尝试在删除后提交更改,您需要先保存数据库,然后再重新添加新条目。
hetVoer.Naam = NaamTekst.Text;
hetVoer.TypeId = Convert.ToInt32(TypeTekst.SelectedValue);
hetVoer.Prijs = Decimal.Parse(PrijsTekst.Text);
var item = (Voer)VoerTekst.SelectedItem;
var delItem = from Voer in db.Voers
where Voer.Vid == item.Vid
select Voer;
db.Voers.DeleteOnSubmit(item);
db.SubmitChanges();
db.Voers.InsertOnSubmit(hetVoer);
db.SubmitChanges();