using System; using ZeroLevel.Services.Serialization; namespace ZeroLevel.DocumentObjectModel { public sealed class AsideContent : IBinarySerializable { /// /// Идентификатор /// public string Identity; /// /// Название содержимого /// public string Caption; /// /// Описание (опционально) /// public string Summary; /// /// Тип содержимого /// public ContentType ContentType; /// /// Содержимое в бинарном представлении /// public byte[] Payload; public AsideContent() { } public AsideContent(IBinaryReader reader) { Deserialize(reader); } public AsideContent(string identity, string caption, string description) { Identity = identity; Summary = description; Caption = caption; } #region IBinarySerializable public void Serialize(IBinaryWriter writer) { writer.WriteString(this.Identity); writer.WriteString(this.Caption); writer.WriteString(this.Summary); writer.WriteInt32((Int32)this.ContentType); writer.WriteBytes(this.Payload); } public void Deserialize(IBinaryReader reader) { this.Identity = reader.ReadString(); this.Caption = reader.ReadString(); this.Summary = reader.ReadString(); this.ContentType = (ContentType)reader.ReadInt32(); this.Payload = reader.ReadBytes(); } #endregion } }