public void copyProject(IFCProjectInfo ProjectInfo, string Export, CopyDetails IFCInfo)
        {
            foreach (var Folder in ProjectInfo.Folders)
            {
                if (Folder.Export == Export || Folder.Export == "")
                {
                    string IFCPath = IFCInfo.To + "\\" + Export + ".ifc";

                    //Sjekker om det er en eksisterende ifc og sletter den
                    if (File.Exists(IFCPath))
                    {
                        File.Delete(IFCPath);
                    }

                    //Kopierer inn ny tom.ifc
                    FileInfo file = new FileInfo(IFCInfo.From);
                    file.CopyTo(IFCPath, true);

                    //Kopierer Modellfilene for gjeldende f*g
                    DirectoryCopy(Folder.From, Folder.To, true);
                }
            }

            //Kopierer eventuelle enkeltstående filer som f.eks. mep- og QPD-filer. Hvis "Export" attributten står tom skal denne kopieres hver gang.
            foreach (var File in ProjectInfo.Files)
            {
                if (File.Export == Export || File.Export == "")
                {
                    FileInfo file = new FileInfo(File.From);
                    file.CopyTo(File.To, true);
                }
            }
        }
        public CopyDetails GetIFCFileData(IFCProjectInfo ProjectInfo)
        {
            CopyDetails currentIFC = new CopyDetails();

            foreach (var File in ProjectInfo.Files)
            {
                if (File.Export == "tomIFC")
                {
                    currentIFC = File;
                }
            }
            return(currentIFC);
        }
        public IFCProjectInfo GetprojectInfo(string _XMLPath)
        {
            XDocument xDoc = XDocument.Load(_XMLPath);

            var ProjectInfo = new IFCProjectInfo {
                Files = new List <CopyDetails>(), Folders = new List <CopyDetails>(), StartFiles = new List <StartFile>()
            };
            var Folders    = xDoc.Element("Project").Element("Folders").Elements("Folder");
            var Files      = xDoc.Element("Project").Element("Files").Elements("File");
            var StartFiles = xDoc.Element("Project").Element("StartFiles").Elements("StartFile");

            foreach (var Folder in Folders)
            {
                ProjectInfo.Folders.Add(new CopyDetails
                {
                    From       = Folder.Attribute("From").Value,
                    To         = Folder.Attribute("To").Value,
                    Export     = Folder.Attribute("Export").Value,
                    Discipline = Folder.Attribute("Discipline").Value
                });
            }

            foreach (var File in Files)
            {
                ProjectInfo.Files.Add(new CopyDetails
                {
                    From   = File.Attribute("From").Value,
                    To     = File.Attribute("To").Value,
                    Export = File.Attribute("Export").Value
                });
            }

            foreach (var StartFile in StartFiles)
            {
                ProjectInfo.StartFiles.Add(new StartFile
                {
                    Path       = StartFile.Attribute("Path").Value,
                    Discipline = StartFile.Attribute("Discipline").Value
                });
            }

            return(ProjectInfo);
        }