2011-03-16 81 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