AppConfig.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Azylee.Core.AppUtils.AppConfigUtils.AppConfigInterfaces;
  2. using Azylee.Core.AppUtils.AppConfigUtils.AppConfigModels;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.IO;
  6. using System.Linq;
  7. using System.Text;
  8. namespace Azylee.Core.AppUtils.AppConfigUtils
  9. {
  10. /// <summary>
  11. /// AppConfig 配置管理器
  12. ///
  13. /// 如何使用:
  14. /// 1. JSON工具中,已实现了基于JSO格式的配置管理器(即转换为JSON保存为文件)
  15. /// 2. 如果需要实现其他方式的配置管理,如:二进制文件、ini文件、数据库,可继承并实现对应方法
  16. /// </summary>
  17. /// <typeparam name="T"></typeparam>
  18. public abstract class AppConfig<T> where T : IAppConfigModel, new()
  19. {
  20. /// <summary>
  21. /// 配置信息模型
  22. /// </summary>
  23. public T Config { get; set; }
  24. /// <summary>
  25. /// 默认构造函数
  26. /// </summary>
  27. public AppConfig()
  28. { }
  29. /// <summary>
  30. /// 初始化配置信息
  31. /// </summary>
  32. /// <returns></returns>
  33. public abstract bool OnCreate();
  34. /// <summary>
  35. /// 销毁配置信息
  36. /// </summary>
  37. /// <returns></returns>
  38. public abstract bool OnDestroy();
  39. /// <summary>
  40. /// 保存配置信息
  41. /// </summary>
  42. /// <returns></returns>
  43. public abstract bool DoSave();
  44. }
  45. }