12345678910111213141516171819202122232425262728 |
- using Newtonsoft.Json;
- namespace LLM.Editor.Helper
- {
- public static class JsonWriter
- {
- public static string ToJson<T>(this T obj, JsonSerializerSettings settings = null) where T : class
- {
- settings ??= _defaultSettings;
- return JsonConvert.SerializeObject(obj, settings);
- }
-
- public static T FromJson<T>(this string json, JsonSerializerSettings settings = null) where T : class
- {
- settings ??= _defaultSettings;
- return JsonConvert.DeserializeObject<T>(json, settings);
- }
-
- private static readonly JsonSerializerSettings _defaultSettings = new()
- {
- Formatting = Formatting.None,
- NullValueHandling = NullValueHandling.Ignore,
- DefaultValueHandling = DefaultValueHandling.Include,
- TypeNameHandling = TypeNameHandling.Auto,
- ReferenceLoopHandling = ReferenceLoopHandling.Ignore
- };
- }
- }
|