Update JsonUtils.cs

This commit is contained in:
2dust
2025-10-29 20:20:44 +08:00
parent c63d4e83f9
commit 86eb8297dd

View File

@@ -35,9 +35,13 @@ public class JsonUtils
/// <typeparam name="T"></typeparam> /// <typeparam name="T"></typeparam>
/// <param name="obj"></param> /// <param name="obj"></param>
/// <returns></returns> /// <returns></returns>
public static T DeepCopy<T>(T obj) public static T? DeepCopy<T>(T? obj)
{ {
return Deserialize<T>(Serialize(obj, false))!; if (obj is null)
{
return default;
}
return Deserialize<T>(Serialize(obj, false));
} }
/// <summary> /// <summary>
@@ -67,7 +71,7 @@ public class JsonUtils
/// </summary> /// </summary>
/// <param name="strJson"></param> /// <param name="strJson"></param>
/// <returns></returns> /// <returns></returns>
public static JsonNode? ParseJson(string strJson) public static JsonNode? ParseJson(string? strJson)
{ {
try try
{ {
@@ -116,7 +120,7 @@ public class JsonUtils
/// <param name="obj"></param> /// <param name="obj"></param>
/// <param name="options"></param> /// <param name="options"></param>
/// <returns></returns> /// <returns></returns>
public static string Serialize(object? obj, JsonSerializerOptions options) public static string Serialize(object? obj, JsonSerializerOptions? options)
{ {
var result = string.Empty; var result = string.Empty;
try try
@@ -125,7 +129,7 @@ public class JsonUtils
{ {
return result; return result;
} }
result = JsonSerializer.Serialize(obj, options); result = JsonSerializer.Serialize(obj, options ?? _defaultSerializeOptions);
} }
catch (Exception ex) catch (Exception ex)
{ {