123456789101112131415161718192021222324252627282930313233 |
- using XGame.Framework.Serialization;
- namespace etoy
- {
- /// <summary>
- /// 序列化用类对象
- /// 序列化时按顺序序列化属性
- /// 不能反序列化
- /// </summary>
- class SerializableFieldGroup : ISerializable
- {
- public List<ISerializable> fields = new List<ISerializable>();
- void ISerializable.Deserialize(IReader reader)
- {
- throw new NotImplementedException();
- }
- void ISerializable.Serialize(IWriter writer)
- {
- for (int i = 0; i < fields.Count; i++)
- {
- if (fields[i] is SerializableFieldGroup)
- { // 如果属性是类对象,需要在对象数据前先序列化一个布尔值
- writer.Write(fields[i]);
- }
- else
- { // 其他数据,直接序列化
- fields[i].Serialize(writer);
- }
- }
- }
- }
- }
|