2011-06-17 61 views
0

我做了一個應用程序,允許我打開朋友之間的對話,當有人給我發送消息時,我收到了一條通知「John給你發送了一條新消息」,當對話中的另一個人給我發送了一條消息時, ,,我的問題是,我不想做出新的通知,但我想更新舊的通知爲前。像這樣的「約翰和Alfred發送新信息」 ..如何更新我的通知?

 var user = users.Where(x => x != CurrentUserId); 

     foreach (var item in user) 
     { 
      var check = entities.Notifications.SingleOrDefault(i => (i.NotificationForId == id 
             && i.NotificationForType == IdType && i.UserId == item)); 
      if (check == null) 
      { 
       Notification notify = new Notification() 
       { 
        NotificationForId = id, 
        NotificationForType = IdType, 
        DateTime = DateTime.Now, 
        Message = GenerateMessage(), 
        UserId = item, 
        SenderID = CurrentUserId.ToString(), 
        SenderName = CurrentUserName 
       }; 

       entities.Notifications.AddObject(notify); 
      } 
      else 
      { 

       check.Checked = false; 
       check.DateTime = DateTime.Now; 
      } 

這裏檢查是否有對用戶的任何通知,如果null,則使其他新的通知「更新通知」

+0

問題是什麼? – BrunoLM

回答

1

你的else塊表示數據庫上存在通知,你可以更新那裏的屬性。要保存所做的更改,無論是插入還是更新,請撥打method entities.SaveChanges()

+0

我如何更新屬性,我已經做了一個方法來保存我從控制器調用它的更改。 –