public static MessageVM MapMessageToViewModel(Message message, string userName) { return new MessageVM() { MessageId = message.Id.ToString(), Username = userName, Content = message.Content, SentOn = message.SentOn }; }
public async Task<Message> SendNewMessage(string conversationId, string userId, string message) { var userObjectId = userId.ToObjectId(); var conversationObjectId = conversationId.ToObjectId(); var existingConversation = await GetConversationById(conversationId); var newMessage = new Message() { Id = ObjectId.GenerateNewId(), Content = message, UserIdFrom = userObjectId, SentOn = DateTime.Now }; existingConversation.Messages.Add(newMessage); await _repository.Conversations.ReplaceOneAsync(c => c.Id == conversationObjectId, existingConversation); return newMessage; }