Exemplo n.º 1
0
        private void App_OnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
        {
            ExceptionHandlerDialog exceptionHandlerDialog = new ExceptionHandlerDialog();

            exceptionHandlerDialog.ShowDialog(e.Exception);
            Console.WriteLine(e.Exception);
            e.Handled = true;
        }
Exemplo n.º 2
0
        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);
        }