public static Model Load(string filePath) { var file = File.ReadAllText(filePath); XElement xml = XElement.Parse(file); ValidateXml(xml); var source = xml.Descendants(XNAME_RAWDATASOURCE).Select(x => RawDataSource.Load(x)).FirstOrDefault(); var reportoires = xml.Descendants(XNAME_REPORTOIRE).Select(x => Repertoire.Load(x)).ToList(); var reports = xml.Descendants(XNAME_REPORT).Select(x => Report.Load(x, reportoires)).ToList(); return(new Model(source, reportoires, reports)); }
private Model(RawDataSource sources, List <Repertoire> reportoires, List <Report> reports) { DataSource = sources; Reportoires = reportoires; Reports = reports; }