Jelajahi Sumber

Merge branch 'fix/bug_1119' into test

qinchaoyue 5 bulan lalu
induk
melakukan
9689a36e3a
1 mengubah file dengan 12 tambahan dan 5 penghapusan
  1. 12 5
      src/Hotline/Caching/Services/SystemSettingCacheManager.cs

+ 12 - 5
src/Hotline/Caching/Services/SystemSettingCacheManager.cs

@@ -71,15 +71,22 @@ namespace Hotline.Caching.Services
 
         public T GetOrDefault<T>(string id, string code, string name, T defaultValue, string remark) where T : struct
         {
-            var value = GetOrSetDefault(code, name, defaultValue.ToString(), remark, id);
-
             try
             {
-                return (T)Convert.ChangeType(value, typeof(T));
+                var value = GetOrSetDefault(code, name, defaultValue.ToString(), remark, id);
+
+                try
+                {
+                    return (T)Convert.ChangeType(value, typeof(T));
+                }
+                catch (InvalidCastException e)
+                {
+                    _logger.LogError($"无法将 '{value}' 转换为类型 {typeof(T).Name}!已返回默认值 {defaultValue}. {e.Message}");
+                }
             }
-            catch (InvalidCastException e)
+            catch (Exception e)
             {
-                _logger.LogError($"无法将 '{value}' 转换为类型 {typeof(T).Name}!已返回默认值 {defaultValue}. {e.Message}");
+                _logger.LogError(e.Message + e.StackTrace);
             }
             return defaultValue;
         }