//using Newtonsoft.Json;
//using System;
//using System.IO;
//using System.Collections.Concurrent;
//using System.Reflection;
//namespace HKHelper
//{
// ///
// /// Json参数服务类
// ///
// public class Json where T : class, new()
// {
// static string path
// {
// get
// {
// Directory.CreateDirectory(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"AccessFile\\JSON"));
// return $"{AppDomain.CurrentDomain.BaseDirectory}AccessFile\\JSON\\{typeof(T).Name}.json";
// }
// }
// public static T Data { get; set; } = new T();
// ///
// /// 保存数据
// ///
// public static void Save()
// {
// string outjson = JsonConvert.SerializeObject(Data);
// File.WriteAllText(path, outjson);
// }
// ///
// /// 获取保存的数据
// ///
// public static void Read()
// {
// if (File.Exists(path))
// {
// string JsonString = File.ReadAllText(path);
// var result = JsonConvert.DeserializeObject(JsonString);
// if (result != null) { Data = result; }
// }
// }
// ///
// /// 保存带接口的对象
// ///
// public static void SaveInterface()
// {
// var settings = new JsonSerializerSettings();
// settings.TypeNameHandling = TypeNameHandling.Objects;
// string outjson = JsonConvert.SerializeObject(Data, Formatting.Indented, settings);
// File.WriteAllText(path, outjson);
// }
// ///
// /// 获取带接口对象的字符串
// ///
// public static void ReadInterface()
// {
// if (File.Exists(path))
// {
// var settings = new JsonSerializerSettings();
// settings.TypeNameHandling = TypeNameHandling.Objects;
// string JsonString = File.ReadAllText(path);
// var result = JsonConvert.DeserializeObject(JsonString, settings);
// if (result != null) { Data = result; }
// }
// }
// /*
// 使用反序列化接口对象的方法
// 一、使用 SaveInterface 方法保存成字符串,使用 ReadInterface 方法获取对象
// 二、在接口属性上加一个特性 [JsonProperty(TypeNameHandling = TypeNameHandling.Auto)]
// */
// }
//}