public CorrespondenceView(ContactModel model, string sample) { InitializeComponent(); DataContext = _viewModel = new CorrespondenceViewModel(model, sample); _viewModel.PropertyChanged += ViewModelOnPropertyChanged; Loaded += OnCorrespondenceViewLoaded; }
// [Authorize(Policy = Constants.Policy.MessageRequirement)] public async Task <IActionResult> Correspondence(string id) { try { string currentUserId = this.userManager.GetUserId(HttpContext.User); var allMessages = this.messageService.GetFullCorrespondence(id, currentUserId); var messages = allMessages .Select(p => { var model = mapper.Map <Message, MessageViewModel>(p); if (p.ReceiverId == currentUserId) { model.IsReceived = true; } return(model); }) .ToArray(); string interlocutor = (await this.userManager.FindByIdAsync(id)).UserName; var respondModel = new RespondViewModel { RecipientId = id }; var viewModel = new CorrespondenceViewModel { Interlocutor = interlocutor, Messages = messages, Respond = respondModel }; return(this.View(viewModel)); } catch (Exception ex) { string message = ex.Message; this.TempData["Error"] = Constants.Message.InvalidOffer; return(this.RedirectToAction("Index", "Home")); } }