我是新來的實體框架。 一週之前,我遇到了當前上下文的常見問題,如果以非獨特的方式使用,會引發異常,但這是固定的。奇怪的約束與實體框架異常
今天我有一個新問題,一個真正新的問題,因爲我不知道爲什麼會發生這種情況,因爲我確實認爲我有相同的代碼。
這裏是我得到的錯誤:
Entities in 'Entities.WSUser_Detail' participate in
the 'FK_WSUser_Detail_WSCountry' relationship.
0 related 'WSCountry' were found. 1 'WSCountry' is expected.
爲何如此奇怪這個錯誤是,在我的代碼我從來沒有引用任何WSUser_Detail對象。 有沒有人想出這種錯誤? 我的代碼是非常簡單的:在調用SaveChanges()
絕對沒有WSUser_Detail被稱爲在我的代碼發生
newUser = (from user in GB.Context.WSUsers
where user.IDUser == nFound
select user).FirstOrDefault();
newUser.DoNotSend = false;
newUser.IP = Request.UserHostAddress;
newUser.LastDtActivity = DateTime.Now;
newUser.Language1 = GB.User.Language;
newUser.LastVersion = sVersion;
newUser.FlushNextTime = false;
GB.Context.SaveChanges();
的錯誤...所以我不知道他爲什麼要問這是一個參考一個永遠不會被調用的對象(但存在於實體上下文中)。
有什麼想法?
奇怪的是,即使代碼似乎沒有改變,我也沒有這個問題。
我更新了Model.edmx以確保它不是原因,但它仍然不起作用,我已經檢查了很多次,並且由於沒有任何WSUser_Detail對象,所以錯誤不應該發生。
我也測試過創建一個空白頁面,裏面只有這個代碼,並且它失敗時有相同的約束異常: using System; using System.Collections.Generic;使用System.Linq的 ; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; 使用palarcdbModel; 公共部分類AS_Default2:System.Web.UI.Page { 保護無效的Page_Load(對象發件人,EventArgs的) { WSUser X =新WSUser(); x.Email =「[email protected]」; x.Language =「fr」; GB.Context.AddToWSUsers(x); GB.Context.SaveChanges(); } } 任何想法? – Micael 2009-12-26 06:20:57
更新你的問題,不要只是添加評論。 – 2009-12-26 06:23:17