Commit inicial
This commit is contained in:
56
ServerExplorer/DocGen.cs
Normal file
56
ServerExplorer/DocGen.cs
Normal file
@@ -0,0 +1,56 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.IO;
|
||||
|
||||
namespace ServerExplorer
|
||||
{
|
||||
public class DocGen
|
||||
{
|
||||
public static void GenerarDocumentacion(Config config, DatabaseDesc database)
|
||||
{
|
||||
// Asegura la existencia de los directorios destinos
|
||||
if (!System.IO.Directory.Exists(config.PathRaiz)) { Utiles.CrearDirectorio(config.PathRaiz); }
|
||||
if (!System.IO.Directory.Exists(config.PathDTO)) { Utiles.CrearDirectorio(config.PathDTO); }
|
||||
if (!System.IO.Directory.Exists(config.PathDAL)) { Utiles.CrearDirectorio(config.PathDAL); }
|
||||
if (!System.IO.Directory.Exists(config.PathExtra)) { Utiles.CrearDirectorio(config.PathExtra); }
|
||||
|
||||
|
||||
// Abrir el documento que contendra la documentacion
|
||||
StreamWriter escritor=new StreamWriter(config.PathExtra+"/documentacion.html");
|
||||
|
||||
|
||||
// Poner cabecera de la documentacion
|
||||
escritor.WriteLine("<html><head><title>" + database.Nombre + "</title></head>");
|
||||
escritor.WriteLine("<body>");
|
||||
|
||||
// Iterar cada tabla
|
||||
foreach (TablaDesc t in database.Tablas)
|
||||
{
|
||||
// Cabecera de la info de tabla
|
||||
escritor.WriteLine("<h2>"+t.Esquema+"."+t.Nombre+"</h2>");
|
||||
|
||||
// Iterar las columnas
|
||||
escritor.WriteLine("<table>");
|
||||
escritor.WriteLine("<thead><tr><th>Nombre</th><th>Tipo</th><th>Tamaño</th><th>Primaria</th></tr></thead>");
|
||||
escritor.WriteLine("<tbody>");
|
||||
foreach (ColumnaDesc c in t.Columnas)
|
||||
{
|
||||
escritor.WriteLine("<tr><td>" +
|
||||
c.Nombre + "</td><td>" +
|
||||
c.Tipo + "</td><td>" +
|
||||
c.Tamanho + "</td><td>" +
|
||||
c.Primaria + "</td></tr>");
|
||||
}
|
||||
escritor.WriteLine("</tbody></table>");
|
||||
}
|
||||
|
||||
|
||||
// Poner pie y cerrar fichero
|
||||
escritor.WriteLine("</body></html>");
|
||||
escritor.Close();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user