/// <summary> /// Сериализовать. /// </summary> /// <param name="obj">Объект.</param> /// <returns>Сериализованное медиа.</returns> public byte[] SerializeToBytes(ISerializableObject obj) { if (obj == null) { return(null); } var serializer = GetSerializer(obj.GetTypeForSerializer()); return(SerializationImplHelper.WithTypeId(serializer.SerializeToBytes(obj), serializer.TypeId)); }
/// <summary> /// Десериализовать. /// </summary> /// <param name="data">Данные.</param> /// <returns>Объект.</returns> public ISerializableObject Deserialize(string data) { if (data == null) { return(null); } (var sdata, var typeId) = SerializationImplHelper.ExtractTypeId(data); var serializer = GetSerializer(typeId); return(serializer.Deserialize(sdata)); }