public ServiceResult ChangeMessageStatus(string Ids, Member_MessageStatus MessageStatus, bool IsSender)
 {
     ServiceResult result = new ServiceResult();
     try
     {
         var IdsArray = Ids.Split(',').Select(x => Convert.ToInt32(x));
         var StatusValue = (int)MessageStatus;
         if (IsSender)
         {
             DB_Service.Set<Member_Message>().Where(x => IdsArray.Contains(x.ID)).ToList().ForEach(x => x.SenderStatus = StatusValue);
         }
         else
         {
             DB_Service.Set<Member_Message>().Where(x => IdsArray.Contains(x.ID)).ToList().ForEach(x => x.RecipienterStatus = StatusValue);
         }
         DB_Service.Commit();
     }
     catch (System.Data.Entity.Validation.DbEntityValidationException ex)
     {
         result.AddServiceError(Utilities.GetInnerMostException(ex));
     }
     return result;
 }
 public IQueryable<Member_Message> GetMemberMessage(int MemberID, Member_MessageStatus MessageStatus, bool IsSender, bool IncludeUpLevel = false)
 {
     var StatusVlaue = (int)MessageStatus;
     var query = DB_Service.Set<Member_Message>();
     if (IsSender)
     {
         query = query.Where(x => x.SenderID == MemberID);
     }
     else
     {
         query = query.Where(x => x.RecipientID == MemberID);
     }
     if (IncludeUpLevel)
     {
         if (IsSender)
         {
             query = query.Where(x => x.SenderStatus >= StatusVlaue);
         }
         else
         {
             query = query.Where(x => x.RecipienterStatus >= StatusVlaue);
         }
     }
     else
     {
         if (IsSender)
         {
             query = query.Where(x => x.SenderStatus == StatusVlaue);
         }
         else
         {
             query = query.Where(x => x.RecipienterStatus == StatusVlaue);
         }
     }
     return query;
 }