public XElement Serialize(Actor actor, string elementName = "actor")
        {
            actor.ThrowIfNull("actor");
            elementName.ThrowIfNull("elementName");

            return new XElement(
                elementName,
                CharacterSerializer.Instance.Serialize(actor.Character),
                new XAttribute("id", actor.Id),
                new XAttribute("name", actor.Name),
                new XAttribute("description", actor.Description));
        }
Пример #2
0
        public byte[] Serialize(Actor actor)
        {
            actor.ThrowIfNull("actor");

            var serializer = new CompactSerializer();

            serializer[0] = actor.Id.ToByteArray();
            serializer[1] = Encoding.UTF8.GetBytes(actor.Name);
            serializer[2] = Encoding.UTF8.GetBytes(actor.Description);
            serializer[3] = CharacterSerializer.Instance.Serialize(actor.Character);

            return serializer.Serialize();
        }