예제 #1
0
        /// <summary>
        ///		Genera los archivos de contenido
        /// </summary>
        private void GenerateFilesContent(DocumentFileModelCollection objColAllDocuments, DocumentFileModelCollection objColDocuments)
        {
            foreach (DocumentFileModel objDocument in objColDocuments)
            {
                TemplateModel objTemplate = Templates.Search(objDocument.StructType);

                // Genera la documentación del archivo
                if (objTemplate == null)
                {
                    AddError(objDocument, "No se encuentra ninguna plantilla para este tipo de estructura");
                }
                else
                {
                    try
                    { Generators.TemplateDocumentGenerator objGenerator = new Generators.TemplateDocumentGenerator(Project, this, objTemplate, objDocument,
                                                                                                                   UrlBaseDocuments, objColAllDocuments);

                      objGenerator.Process(); }
                    catch (Exception objException)
                    { AddError(objDocument, $"Error al generar el documento. {objException.Message}"); }
                }
                // Genera los documentos hijo
                GenerateFilesContent(objColAllDocuments, objDocument.Childs);
            }
        }
예제 #2
0
        /// <summary>
        ///		Genera los archivos de índice
        /// </summary>
        private DocumentFileModelCollection GenerateFilesIndex(DocumentFileModelCollection objColDocuments)
        {
            DocumentFileModelCollection objColFilesIndex = new DocumentFileModelCollection();

            // Recorre las plantillas generando los archivos de índice
            foreach (TemplateModel objTemplate in Templates)
            {
                if (objTemplate.IDType == TemplateModel.TemplateType.Index)
                {
                    try
                    { DocumentFileModel objFullDocument = objColDocuments.Compact(objTemplate.Name);
                      Generators.TemplateDocumentGenerator objGenerator = new Generators.TemplateDocumentGenerator(Project, this, objTemplate,
                                                                                                                   objFullDocument, UrlBaseDocuments,
                                                                                                                   objColDocuments);

                      // Procesa el documento
                      objGenerator.Process();
                      // ... y lo añade a la colección de índices
                      objColFilesIndex.Add(objFullDocument); }
                    catch (Exception objException)
                    { AddError($"Error al generar el documento de índice de la plantilla {objTemplate.RelativeFileName}. {objException.Message}"); }
                }
            }
            // Devuelve la colección de índices
            return(objColFilesIndex);
        }