public override object Deserialize(IDictionary <string, object> dictionary, Type type, JavaScriptSerializer serializer)
        {
            DictionaryBasedEntity entity = (DictionaryBasedEntity)Activator.CreateInstance(type);

            entity.SetProperties(dictionary);
            OverrideReferenceFields(entity);

            return(entity);
        }