public string SendMessageToUser(MessageToUser message)
 {
     List<Uri> list = new List<Uri>();
     
     if (message.Type == 1)
     {
         Console.WriteLine("type:  1"+message.FromId+"--"+message.ToId);
         MessageToUserTable table = new MessageToUserTable()
         {
             FromId = message.FromId,
             ToId = message.ToId,
             Type = 1,
             MessageContent = message.MessageContent,
             Time = message.Time,
             IsSee = false,
         };
         db.MessageToUserTables.AddObject(table);
         db.SaveChanges();
         if (RegistrationService.GetSubscribers().Keys.Contains(message.ToId))
         {
             list.Add(RegistrationService.GetSubscribers()[message.ToId]);
             
                 notifier.SendTileNotification(list, "", "", 1, "", null);
                 string UserName = db.AcquirerTables.SingleOrDefault(c => c.Id == message.FromId).UserName;
                 Console.WriteLine("From " + UserName + " To " + message.ToId+"   MessageContent:"+message.MessageContent);
                 notifier.SendToastNotification(list, UserName, message.MessageContent, null);
            
         }
     }
     if (message.Type == 2)
     {
         MessageToUserTable table2 = new MessageToUserTable()
         {
             FromId = message.FromId,
             ToId = message.ToId,
             Type = 2,
             MessageContent = message.MessageContent,
             Time = message.Time,
             IsSee = false,
         };
         db.MessageToUserTables.AddObject(table2);
         db.SaveChanges();
         Console.WriteLine("type:  2");
         if (RegistrationService.GetSubscribers().Keys.Contains(message.ToId))
         {
             list.Add(RegistrationService.GetSubscribers()[message.ToId]);
             notifier.SendTileNotification(list, "", "", 1, "", null);
             Console.WriteLine("From System Message to "+ +  message.ToId+ " MessageContent:" + message.MessageContent);
             notifier.SendToastNotification(list, "System Message", message.MessageContent, null);
         }
     }
     return "OK";
 }
 public string SendMessageToUser_V(MessageToUser message)
 {
     List<Uri> list = new List<Uri>();
     if (message.Type == 1)
     {
         MessageToUserTable table = new MessageToUserTable()
         {
             FromId = message.FromId,
             ToId = message.ToId,
             Type = 1,
             MessageContent = message.MessageContent,
             Time = message.Time,
             IsSee = false,
         };
         db.MessageToUserTables.AddObject(table);
         db.SaveChanges();
         if (RegistrationService.GetSubscribers().Keys.Contains(message.ToId))
         {
             list.Add(RegistrationService.GetSubscribers()[message.ToId]);
             {
                 notifier.SendTileNotification(list, "", "", 1, "", null);
                 string UserName = db.UserTables.SingleOrDefault(c => c.Id == message.FromId).UserName;
                 notifier.SendToastNotification(list, UserName, message.MessageContent, null);
             }
         }
     }
     if (message.Type == 2)
     {
         MessageToUserTable table2 = new MessageToUserTable()
         {
             FromId = message.FromId,
             ToId = message.ToId,
             Type = 2,
             MessageContent = message.MessageContent,
             Time = message.Time,
             IsSee = false,
         };
         db.MessageToUserTables.AddObject(table2);
         db.SaveChanges();
         if (RegistrationService.GetSubscribers().Keys.Contains(message.ToId))
         {
             list.Add(RegistrationService.GetSubscribers()[message.ToId]);
             notifier.SendTileNotification(list, "", "", 1, "", null);
             notifier.SendToastNotification(list, "System Message", message.MessageContent, null);
         }
     }
     //if(message.Type==3)
     //{
     //    MessageToUserTable table3 = new MessageToUserTable()
     //    {
     //        FromId = message.FromId,
     //        ToId = message.ToId,
     //        Type = 3,
     //        MessageContent = message.MessageContent,
     //        Time = message.Time,
     //        IsSee = false,
     //    };
     //    db.MessageToUserTables.AddObject(table3);
     //    db.SaveChanges();
     //}
     return "OK";
 }
 public List<MessageToUser> GetMessge(int userId)
 {
     List<MessageToUser> list = new List<MessageToUser>();
     foreach (MessageToUserTable item in db.MessageToUserTables.Where(c => c.ToId == userId && c.IsSee == false))
     {
         if (item.Type == 1)
         {
             string name="";
             AcquirerTable acquirer=db.AcquirerTables.FirstOrDefault(c => c.Id == item.FromId);
             UserTable user = db.UserTables.FirstOrDefault(c => c.Id == item.FromId);
             if (acquirer != null)
             {
                 name= acquirer.UserName;
             }
             if (user != null)
             {
                 name = user.UserName;
             }
             MessageToUser message = new MessageToUser()
             {
                 Name=name,
                 FromId = item.FromId,
                 MessageContent = item.MessageContent,
                 Type = item.Type
             };
             list.Add(message);
             item.IsSee = true;
         }
         else
         {
                 MessageToUser message = new MessageToUser()
                 {
                     MessageContent = item.MessageContent,
                     Type = item.Type
                 };
                 item.IsSee = true;
                 list.Add(message);
         }
     }
     db.SaveChanges();
     return list;
 }