public static void AddMessage(object source, string message, string caption, Exception exception, MessageDisplayType displayType, MessageSeverityType messageSeverity) { string sourceName = string.Empty; if (source != null) { Type sourceType = source.GetType(); if (sourceType == typeof(string)) { sourceName = source as string; } else { sourceName = string.Format("{0}.{1}", sourceType.Namespace, sourceType.Name); } } var msg = new MessageContent(sourceName, message, caption, exception, displayType, messageSeverity); HandleMessage(msg); if (Application.AllowQuit && messageSeverity == MessageSeverityType.Terminating) { Application.Exit(); } }
/// <exception cref="ArgumentNullException">Either message or exception has to have a value.</exception> public MessageContent(string source, string message, string caption, Exception exception, MessageDisplayType displayType, MessageSeverityType messageSeverity) { if (string.IsNullOrWhiteSpace(message) && exception == null) { throw new ArgumentNullException("message", "Either message or exception has to have a value."); } _dateTime = DateTime.Now; _source = source ?? ""; _message = message ?? ""; _caption = caption ?? ""; _exception = exception; _displayType = displayType; _messageSeverity = messageSeverity; if (_exception == null) { return; } if (string.IsNullOrWhiteSpace(_source)) { _source = _exception.Source; } if (string.IsNullOrWhiteSpace(_message)) { _message = _exception.Message; } }
/// <exception cref="ArgumentNullException">Either message or exception has to have a value.</exception> public MessageContent(string source, string message, string caption, Exception exception, MessageDisplayType displayType, MessageSeverityType messageSeverity) { if (string.IsNullOrWhiteSpace(message) && exception == null) { throw new ArgumentNullException("message", "Either message or exception has to have a value."); } _dateTime = DateTime.Now; _source = source ?? ""; _message = message ?? ""; _caption = caption ?? ""; _exception = exception; _displayType = displayType; _messageSeverity = messageSeverity; if (_exception == null) return; if (string.IsNullOrWhiteSpace(_source)) _source = _exception.Source; if (string.IsNullOrWhiteSpace(_message)) _message = _exception.Message; }
/// <exception cref="ArgumentNullException">Either message or exception has to have a value.</exception> public MessageContent(string source, string message, string caption, MessageDisplayType displayType, MessageSeverityType messageSeverity) : this(source, caption, message, null, displayType, messageSeverity) { }
/// <exception cref="ArgumentNullException">Either message or exception has to have a value.</exception> public MessageContent(string caption, Exception exception, MessageDisplayType displayType, MessageSeverityType messageSeverity) : this(exception.Source, caption, exception.Message, exception, displayType, messageSeverity) { }
private static void CurrentDomainUnhandledException(object sender, UnhandledExceptionEventArgs e) { MessageSeverityType severity = e.IsTerminating ? MessageSeverityType.Terminating : MessageSeverityType.Error; AddMessage(sender, null, null, (Exception)e.ExceptionObject, MessageDisplayType.MessageBox, severity); }