public static JadeData.Project.IProject Read(string path) { ProjectType xml; XmlSerializer serializer = new XmlSerializer(typeof(ProjectType)); TextReader tr = new StreamReader(path); try { xml = (ProjectType)serializer.Deserialize(tr); } finally { tr.Close(); tr.Dispose(); } JadeData.Project.IProject result = new JadeData.Project.Project(xml.Name, path); foreach (FolderType f in xml.Folders) { result.AddFolder(MakeFolder(result.Directory, f)); } foreach (FileType f in xml.Files) { result.AddItem(MakeFile(result.Directory, f)); } return result; }