public async Task <ActionResult <MessageToShowDto[]> > GetMessages([FromQuery] string recieverId) { List <Message> m = await _messageService.GetAllRecievedMessages(recieverId); if (m == null) { return(NotFound("No Messages found in the database")); } Message[] mArray = m.ToArray(); MessageToShowDto[] mToShow = new MessageToShowDto[mArray.GetLength(0)]; for (int i = 0; i < mArray.GetLength(0); i++) { mToShow[i] = new MessageToShowDto(); foreach (var field in mArray[i].GetType().GetProperties()) { PropertyInfo pi = mToShow[i].GetType().GetProperty(field.Name); if (pi != null) { pi.SetValue(mToShow[i], field.GetValue(mArray[i])); } } } return(Ok(mToShow)); }
///////////////////////////////////////// //method to create message to send to server ///////////////////////////////////////// public async Task <IActionResult> Register(MessageToShowDto messageToShow) { Message message = new Message(); foreach (var field in messageToShow.GetType().GetProperties()) { PropertyInfo pi = message.GetType().GetProperty(field.Name); pi.SetValue(message, field.GetValue(messageToShow)); } //////////////////////////// //send message to service //////////////////////////// await _messageService.Create(message); return(Ok(message)); }