這裏指定的外鍵是我的表結構..實體框架:如何在實體
簡介:簡檔(PK),摘要名稱VARCHAR(50),GenderID(FK)
性別:GenderID( PK),GenderName varchar(50)
性別表有2個可能的值:男性,女性。
在實體框架,當我更新與GenderID的輪廓,我使用下面的代碼:
profile.GenderID = Repository.
GetGender(
Request.Form["Profile.GenderName"].ToString()
).GenderID;
Repository.Save();
GetGender方法如下所示:
public Gender GetGender(string genderName)
{
return (from gender in db.Genders
where (gender.GenderName.Equals(genderName))
select gender).First();
}
是否有更好的辦法正在做?我覺得我沒有使用實體框架,因爲它應該是...
如果我將該值分配給profile.Gender.GenderID而不是profile.GenderID,那麼我正在更新原始性別查找表,這不是什麼我想要。
我很困惑..
謝謝..
不成熟的優化是萬惡之源。 – 2010-06-29 15:14:13
同意。在這種情況下很難評估。但是對數據庫進行不必要的調用肯定會對性能產生負面影響。 – DOK 2010-06-29 15:28:36