public void Deserialize(XElement parentNode, SerializationContext context) { parentNode = (XElement)context.Document.Element(context.ExolutioNS + "Project"); UsesVersioning = SerializationContext.DecodeBool(parentNode.Attribute("UsesVersioning").Value); if (UsesVersioning) { VersionManager = new VersionManager(this); VersionManager.Loading = true; this.DeserializeWrappedCollection("Versions", VersionManager.Versions, Version.CreateInstance, parentNode, context); this.DeserializeWrappedCollection("ProjectVersions", ProjectVersions, ProjectVersion.CreateInstance, parentNode, context); XElement versionLinksElement = parentNode.Element(context.ExolutioNS + "VersionLinks"); if (versionLinksElement != null) { VersionManager.DeserializeVersionLinks(versionLinksElement, context); } VersionManager.Loading = false; } else { ProjectVersion objSingleVersion = new ProjectVersion(this, Guid.Empty); objSingleVersion.DeserializeFromChildElement("SingleVersion", parentNode, context); SingleVersion = objSingleVersion; } //XAttribute nameAttribute = parentNode.Attribute("Name"); //if (nameAttribute != null) //{ // this.Name = nameAttribute.Value; //} }