IDeserializeSystem.cs 709 B

12345678910111213141516171819202122232425262728293031
  1. 
  2. using System;
  3. namespace KYFramework
  4. {
  5. public interface IDeserializeSystem
  6. {
  7. Type Type();
  8. void Run(object o);
  9. }
  10. /// <summary>
  11. /// 反序列化后执行的System
  12. /// 要小心使用这个System,因为对象假如要保存到数据库,到dbserver也会进行反序列化,那么也会执行该System
  13. /// </summary>
  14. /// <typeparam name="T"></typeparam>
  15. public abstract class DeserializeSystem<T> : IDeserializeSystem
  16. {
  17. public void Run(object o)
  18. {
  19. this.Deserialize((T)o);
  20. }
  21. public Type Type()
  22. {
  23. return typeof(T);
  24. }
  25. public abstract void Deserialize(T self);
  26. }
  27. }