public override string ToString() { switch (PropertyRouteType) { case PropertyRouteType.Root: return("({0})".FormatWith(typeof(Entity).IsAssignableFrom(type) ? TypeEntity.GetCleanName(type) : type.Name)); case PropertyRouteType.FieldOrProperty: return(Parent.ToString() + (Parent.PropertyRouteType == PropertyRouteType.MListItems ? "" : ".") + (PropertyInfo != null ? PropertyInfo.Name : FieldInfo.Name)); case PropertyRouteType.Mixin: return(Parent.ToString() + "[{0}]".FormatWith(type.Name)); case PropertyRouteType.MListItems: return(Parent.ToString() + "/"); case PropertyRouteType.LiteEntity: return(Parent.ToString() + ".Entity"); } throw new InvalidOperationException(); }
static string SerializeLite(object obj, Type defaultEntityType) { var lite = ((Lite <Entity>)obj); return(lite.Id + ";" + (lite.EntityType == defaultEntityType ? null : TypeEntity.GetCleanName(lite.EntityType)) + ";" + lite.ToString()); }