public async Task <Response <TotalMessage> > GetGlobalMessage(int messageId, int repId) { try { var msg = await _repo.GetGlobalMessage(messageId); if (msg == null) { return(new Response <TotalMessage>("Error :Message Is not found ")); } var gMsg = new TotalMessage { Content = msg.MessageContent.Content, Id = msg.Id, DateTime = msg.DateTime, TypesEnum = NotificationTypesEnum.GlobalMessage }; var handler = new GlobalMessageRead(msg, _repo, repId); var readingHandler = new GlobalMessageReadingHandler(_repo, repId); readingHandler.SetObj(new List <IReadable <int> > { handler }); var readGlobal = readingHandler.ReadAll(); await _unitWork.CommitAsync(); if (readGlobal.Any()) { gMsg.Read = false; } return(new Response <TotalMessage>(gMsg)); } catch (Exception e) { return(new Response <TotalMessage>($"Error :{e.Message}")); } }