void SendDataToRecipientsControl() { MessageControlModel.FillMessageRecipients(); RecipientsControlModel rcm = new RecipientsControlModel() { AllEmployees = MessageControlModel.AllEmployees, Recipients = MessageControlModel.Message.Recipients }; rcm.UpdateByRecipients(); RecipientsControl.DataContext = rcm; }
void SendMessage() { MessageControlModel mcm = (MessageControlModel)MessageControl.DataContext; try { mcm.Message.Sender = null; App.proxy.SendMessage(mcm.Message); MainWindow MainWindow = (MainWindow)App.Current.MainWindow; MainWindow.UpdateWindow(); this.Close(); } /// Сервис не отвечает catch (EndpointNotFoundException ex) { HandleSendMessageException(ex); } ///Креденшелы не подходят catch (System.ServiceModel.Security.MessageSecurityException ex) { HandleSendMessageException(ex); } /// Ошибка в сервисе /// (маловероятна, при таком варианте скорее сработает ошибка креденшелов, /// т.к. проверка паролей происходит на каждом запросе к сервису и ей необходима БД) catch (FaultException <System.ServiceModel.ExceptionDetail> ex) { HandleSendMessageException(ex); } /// Остальные исключения, в т.ч. ArgumentException, ArgumentNullException catch (Exception ex) { HandleSendMessageException(ex); throw; } }