using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tango.BL.Serialization { /// /// Represents an object that defines which properties should not be serialized with the Json serializer. /// public interface ISerializableEntity { /// /// Gets the default serialization strategy. /// /// The serialization flags. /// EntitySerializationStrategy GetDefaultSerializationStrategy(EntitySerializationFlags flags); /// /// Converts the entity to a json string using the specified serialization strategy. /// /// The serialization strategy. /// The flags. /// String ToJson(EntitySerializationStrategy serializationStrategy, EntitySerializationFlags flags); /// /// Converts the entity to a json string using the default serialization strategy. /// /// String ToJson(); /// /// Merges the specified json string into this entity. /// /// The json. void PopulateFromJson(String json); } }