public class Project { public string Name; public string Description; public ProjectType Type; public string Version; public string Update; public string AuthorName; public string AuthorEmail; public string AuthorWebsite; public bool Override; public bool HideEntry; public List Requirements; public List Files; public List Tasks; [XmlIgnore] public bool Saved; [XmlIgnore] public string FullName; [XmlIgnore] public string Path; public Project() { Requirements = new List(); Files = new List(); Tasks = new List(); } public static Project LoadProject( string filename ) { XmlSerializer xs = new XmlSerializer( typeof( Project ) ); FileStream fs = File.Open( filename, FileMode.Open, FileAccess.Read, FileShare.Read ); Project proj = (Project)xs.Deserialize( fs ); fs.Close(); return proj; } public static void SaveProject( string filename, Project proj ) { XmlSerializer xs = new XmlSerializer( typeof( Project ) ); FileStream fs = File.Create( filename ); xs.Serialize( fs, proj ); fs.Close(); } }