瀏覽代碼

Parse enums without throwing exception

Brad Robinson 3 年之前
父節點
當前提交
439daf5243
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      Topten.JsonKit/JsonReader.cs

+ 4 - 1
Topten.JsonKit/JsonReader.cs

@@ -275,7 +275,10 @@ namespace Topten.JsonKit
                     return ReadLiteral(literal => {
                         try
                         {
-                            return Enum.Parse(type, (string)literal);
+                            if (literal is string str)
+                                return Enum.Parse(type, str);
+                            else
+                                return Enum.ToObject(type, literal);
                         }
                         catch
                         {