public object HydrateValue(string nodeText, IGraph uow) { var list = LengthEncoder.LengthDecodeList(nodeText); Condition.Requires(list).HasLength(2); var typeName = list.ElementAt(0); var serData = list.ElementAt(1); //instantiate the type, uninitialized Type type = TheTypeLocator.Instance.Locator.FindAssemblyQualifiedType(typeName); var obj = ReflectionUtil.CreateUninitializedObject(type); //since it's stringable, we use stringable's parsing to initialize IStringable s = obj as IStringable; s.Parse(serData); return(obj); }