[英]Foreign key with EF 4 c#
我在EF 4.0中的外鍵有問題。
我和一個玩家玩了一場小游戲。 該玩家可以在游戲中包含一些角色。
因此,當我想向數據庫添加字符時,必須設置外鍵“ PlayerId”。
這是我的代碼,但是在上下文模型中添加對象時會殺死:
using (DatabaseModelContainer model = new DatabaseModelContainer())
{
Character c = new Character();
c.Player.Id = idPlayer;
model.CharacterJeu.AddObject(c);
model.SaveChanges();
}
感謝的答案。
這里很奇怪
Character c = new Character();
c.Player.Id = idPlayer;//But instance c has no Player (well, I don't know the constructor of Character, but I may imagine there's no new Player() inside)
順便說一下,有了您似乎擁有的模型,您就不必像以前那樣管理FK。 您必須管理參考(導航)屬性。
你可以那樣做。
Character c = new Character{
Player = model.GetPlayerByid(idPlayer);//or something like that
}
實體框架有一個稱為Attach的方法,這可能是您要尋找的。 我認為它可以用於更新現有對象上的外國實體。
MSDN: 附加和分離對象
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.