private void App_OnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e) { ExceptionHandlerDialog exceptionHandlerDialog = new ExceptionHandlerDialog(); exceptionHandlerDialog.ShowDialog(e.Exception); Console.WriteLine(e.Exception); e.Handled = true; }
public static IDialog <object> GetRootDialog(Activity activity) { IDialog <object> dialog = null; var properties = new Dictionary <string, string> { { "channelId", activity.ChannelId }, { "fromName", activity.From.Name }, { "recipientName", activity.Recipient.Name }, }; if (activity.ChannelId == SmsChannelId) { //properties.Add("dialog", "UserSmsRootDialog"); //dialog = new ExceptionHandlerDialog<object>(new UserSmsRootDialog(), //displayException: true); dialog = new ExceptionHandlerDialog <object>(new UserRootDialog(), displayException: true); } else { try { if (activity.Conversation.ConversationType == "personal") { dialog = new ExceptionHandlerDialog <object>(new UserRootDialog(), displayException: true); } else { properties.Add("dialog", "AgentRootDialog"); dialog = new ExceptionHandlerDialog <object>(new AgentRootDialog(), displayException: true); } } catch (Exception e) { WebApiConfig.TelemetryClient.TrackException(e, properties); dialog = new ExceptionHandlerDialog <object>(new UserRootDialog(), displayException: true); } } WebApiConfig.TelemetryClient.TrackEvent("GetRootDialog", properties); return(dialog); }