diff --git a/shadowsocks-csharp/Controller/MenuViewController.cs b/shadowsocks-csharp/Controller/MenuViewController.cs index feaf7c18103..87854b708ea 100644 --- a/shadowsocks-csharp/Controller/MenuViewController.cs +++ b/shadowsocks-csharp/Controller/MenuViewController.cs @@ -542,7 +542,7 @@ private void UpdateNodeCheckerNewNodeFound(object sender, EventArgs e) { foreach (var serverSubscribe in config.ServerSubscribes.Where(serverSubscribe => serverSubscribe.Url == Global.UpdateNodeChecker.SubscribeTask.Url)) { - serverSubscribe.LastUpdateTime = (ulong)DateTimeOffset.Now.ToUnixTimeSeconds(); + serverSubscribe.LastUpdateTime = DateTimeOffset.UtcNow.ToUnixTimeSeconds(); } var defaultServer = new Server(); diff --git a/shadowsocks-csharp/Model/ServerSubscribe.cs b/shadowsocks-csharp/Model/ServerSubscribe.cs index 38330339490..a8af9c46016 100644 --- a/shadowsocks-csharp/Model/ServerSubscribe.cs +++ b/shadowsocks-csharp/Model/ServerSubscribe.cs @@ -13,7 +13,7 @@ public class ServerSubscribe : ViewModelBase { private string _url; private string _tag; - private ulong _lastUpdateTime; + private long _lastUpdateTime; private bool _autoCheckUpdate; private HttpRequestProxyType _proxyType; @@ -58,7 +58,7 @@ public string Tag } } - public ulong LastUpdateTime + public long LastUpdateTime { get => _lastUpdateTime; set diff --git a/shadowsocks-csharp/View/SubscribeWindow.xaml b/shadowsocks-csharp/View/SubscribeWindow.xaml index 92ccd043ba4..c902a9de1ef 100644 --- a/shadowsocks-csharp/View/SubscribeWindow.xaml +++ b/shadowsocks-csharp/View/SubscribeWindow.xaml @@ -1,4 +1,4 @@ - - + diff --git a/shadowsocks-csharp/View/ValueConverter/UlongToDateTimeString.cs b/shadowsocks-csharp/View/ValueConverter/UnixSecondsToString.cs similarity index 58% rename from shadowsocks-csharp/View/ValueConverter/UlongToDateTimeString.cs rename to shadowsocks-csharp/View/ValueConverter/UnixSecondsToString.cs index a6f7dd15735..29c1219b92c 100644 --- a/shadowsocks-csharp/View/ValueConverter/UlongToDateTimeString.cs +++ b/shadowsocks-csharp/View/ValueConverter/UnixSecondsToString.cs @@ -3,17 +3,15 @@ namespace Shadowsocks.View.ValueConverter { - public class UlongToDateTimeString : IValueConverter + public class UnixSecondsToString : IValueConverter { public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { - if (value is ulong lastUpdateTime && targetType == typeof(string)) + if (value is long lastUpdateTime && targetType == typeof(string)) { - if (lastUpdateTime != 0) + if (lastUpdateTime is not 0) { - var now = new DateTime(1970, 1, 1, 0, 0, 0); - now = now.AddSeconds(lastUpdateTime); - return $@"{now.ToLongDateString()} {now.ToLongTimeString()}"; + return DateTimeOffset.FromUnixTimeSeconds(lastUpdateTime).ToLocalTime().ToString(); } } return @"(`・ω・´)";