32 lines
610 B
C#
32 lines
610 B
C#
|
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);
|
|||
|
}
|
|||
|
}
|