我有一个实体有两个FK。我一直试图在数据库中插入一个记录,但没有成功。以下是我使用的方法:
valuePaymentBetToAdd.BetType = db.BetTypes.First(betType => betType.Id == valuePaymentBetToAdd.BetType.Id);
valuePaymentBetToAdd.Lottery = db.Lotteries.First(lotto => lotto.Id == valuePaymentBetToAdd.Lottery.Id);
在这种情况下,会分配第二个对象,但是当调用savechanges方法时,我会得到一个错误,即彩票对象的属性为空。
valuePaymentBetToAdd.BetTypeReference.EntityKey = new EntityKey(db.DefaultContainerName + ".BetType", "Id", valuePaymentBetToAdd.BetType.Id);
valuePaymentBetToAdd.LotteryReference.EntityKey = new EntityKey(db.DefaultContainerName + ".Lottery", "Id", valuePaymentBetToAdd.Lottery.Id);
在这种情况下,我会得到另一个奇怪的错误。将对象添加到集合中时。
无法添加或附加该对象,因为其EntityReference的EntityKey属性值与此对象的EntityKey不匹配。
在这个案子里我是不是漏了点什么?