/// <summary> /// Carga los datos de la referencia /// </summary> public ReferenceModel Load(Model.Solutions.FileModel file) { ReferenceModel reference = new ReferenceModel(file); // Carga el archivo si existe if (System.IO.File.Exists(file.DocumentFileName)) { MLFile fileML = new XMLParser().Load(file.DocumentFileName); if (fileML != null) { foreach (MLNode nodeML in fileML.Nodes) { if (nodeML.Name == TagRoot) { foreach (MLNode childML in nodeML.Nodes) { reference.ProjectName = nodeML.Nodes[TagPathProject].Value; reference.FileNameReference = nodeML.Nodes[TagFileName].Value; } } } } } // Devuelve la referencia return(reference); }
/// <summary> /// Carga los datos del documento /// </summary> public DocumentModel Load(Model.Solutions.FileModel file) { DocumentModel document = new DocumentModel(file); // Carga el archivo si existe Load(file.Project, document, file.DocumentFileName); // Obtiene el tipo de documento document.File.FileType = file.GetFileTypeByExtension(); // Devuelve el documento return(document); }
/// <summary> /// Graba los datos de un documento /// </summary> public void Save(Model.Solutions.FileModel file, DocumentModel document = null) { // Crea el documento con los datos del archivo if (document == null && file.FileType != Model.Solutions.FileModel.DocumentType.File && file.FileType != Model.Solutions.FileModel.DocumentType.Folder) { document = new DocumentModel(file); } // Graba el documento if (document != null) { Save(document); } }
/// <summary> /// Crea un archivo con el nombre pasado como parámetro /// </summary> private Model.Solutions.FilesModelCollection LoadFiles(MLNode nodeML, string tag, Model.Solutions.ProjectModel project) { Model.Solutions.FilesModelCollection files = new Model.Solutions.FilesModelCollection(project); // Carga los nodos foreach (MLNode childML in nodeML.Nodes) { if (childML.Name == tag) { Model.Solutions.FileModel file = new Model.Solutions.FileModel(project); // Asigna el nombre de archivo file.FullFileName = System.IO.Path.Combine(project.File.Path, childML.Value); // Añade el archivo a la colección files.Add(file); } } // Devuelve el archivo return(files); }
/// <summary> /// Carga el documento asociado a un archivo /// </summary> public DocumentModel Load(Model.Solutions.FileModel file) { return(new DocumentRepository().Load(file)); }