2011-03-16 34 views
0

我正在執行一個實體的創建操作。該實體是存儲過程的函數導入。沒有引發異常,但我在數據庫中沒有新的東西。我檢查了我的連接字符串幾次,指向Dev環境應該如此。我堅持在ObjectResult<T>上的斷點,它擊中並流過返回View()。我還能做些什麼來調試/排除故障?實體框架 - 沒有未處理異常的調試問題

[HttpPost] 
     public ActionResult Create(Tracker_CreateUser_Result model) 
     { 
      string currentUser = Environment.UserDomainName + "\\" + Environment.UserName; 
      TrackerEntities context = new TrackerEntities(); 

      model.User_Created_Date = DateTime.Now; 
      model.User_Created_Logon_Name = currentUser; 
      model.User_Updated_Logon_Name = currentUser; 
      model.User_Updated_Datetime = DateTime.Now; 
      System.Data.Objects.ObjectResult<Tracker_CreateUser_Result> result = context.Tracker_CreateUser(model.User_Name,model.User_Logon_Name,model.User_Token,model.User_Demo,model.User_Demo_Logon_Name,model.User_Interface,model.User_Status,model.User_Reason_for_Edit,model.User_Created_Logon_Name,model.User_Created_Date,model.User_Updated_Logon_Name,model.User_Updated_Datetime); 
      context.SaveChanges();//UPDATE 
      ViewBag.Message = "Successfully created user"; 
      return View(); 
     } 

回答

1

添加實體後應該調用context.SaveChanges()

希望這會有所幫助:)

+0

謝謝,我非常希望這會工作。同樣的問題,沒有錯誤 - 數據庫中沒有更新。安置位於OP。 – 2011-03-16 21:49:48

+0

Context.SaveChanges()不是必需的。我在創建我的實體時有一點欺騙。我最初在存儲過程中執行SELECT *只是爲了簡化生成複雜類型。事實證明,一旦你擁有複雜的類型,這就需要撤消。您可以將複雜類型複製到新的並更新原件。一般來說,不是一個好主意,更容易輸出所有的變量...。長度..等等:\ – 2011-03-16 22:14:22