zxl
/
CTT
forked from Cal/CTT
1
0
Fork 0
CTT/Unity/Assets/Model/Core/Object/IDeserializeSystem.cs

32 lines
610 B
C#
Raw Normal View History

2021-04-08 20:09:59 +08:00
using System;
namespace ET
{
public interface IDeserializeSystem
{
Type Type();
void Run(object o);
}
/// <summary>
/// 反序列化后执行的System
/// 要小心使用这个System因为对象假如要保存到数据库到dbserver也会进行反序列化那么也会执行该System
/// </summary>
/// <typeparam name="T"></typeparam>
[ObjectSystem]
public abstract class DeserializeSystem<T> : IDeserializeSystem
{
public void Run(object o)
{
this.Deserialize((T)o);
}
public Type Type()
{
return typeof(T);
}
public abstract void Deserialize(T self);
}
}