-
Notifications
You must be signed in to change notification settings - Fork 36
/
ErrorManager.cs
48 lines (41 loc) · 1.03 KB
/
ErrorManager.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
using System;
using System.Windows.Threading;
using Jarloo.Sojurn.Helpers;
using Jarloo.Sojurn.ViewModels;
namespace Jarloo.Sojurn;
public static class ErrorManager
{
public static Dispatcher Dispatcher { get; set; }
public static void Log(Exception ex)
{
Log(ex.ToString());
}
public static void Log(string msg)
{
try
{
if (Dispatcher == null) return;
Dispatcher.InvokeAsync(() =>
{
try
{
var vm = ViewModelManager.GetFirstViewModelByType<ErrorViewModel>();
if (vm == null)
{
vm = ViewModelManager.Create<ErrorViewModel>();
vm.Show();
}
vm.AddEntry(msg);
}
catch
{
//supress
}
}, DispatcherPriority.Background);
}
catch
{
//supress
}
}
}