¿Es posible combinar dos páginas creadas por SandCastle en una sola página principal?


Para cada clase en el proyecto, SandCastle crea (entre otras) dos páginas:

  • La página principal, llamada como T_class_full_name, con la descripción, Sintaxis, Jerarquía de Herencia y Ver También
  • La página de miembros, llamada como AllMembers_T_class_full_name, con Constructores, Métodos, Campos, etc.

¿Hay una manera de fusionar estos dos juntos - con el members page que se añade a la página principal?

Author: for-each, 2010-01-12

1 answers

No puedo proporcionar una respuesta de trabajo para esto, pero puedo ofrecer algunas ideas que pueden funcionar si alguien está dispuesto a hackear con él:

1. El HTMLBody de configuración.xsl define parte de la estructura incluyendo una sección con una prueba para los miembros: <xsl:if test="$subgroup='members'"> Si esto se activa a nivel de clase (o simplemente se establece en true, podría darle una idea de cómo se produce esa salida. (No creo que haya un ajuste de bala mágica aquí).

2. aquí es (creo) donde los enlaces al miembro se agregan subgrupos, también jugaría con esto:

<!-- add a link to the member list section for this subgroup -->
<a href="#{$elementVisibility}Toggle" onclick="OpenSection({$elementVisibility}Toggle)">

3. Tengo otras ideas tratando de jugar con la estructura, pero tendría que hackearla para proporcionar una respuesta clara. Ni siquiera estoy cerca de seguro de que el HTMLBody.xsl es el lugar para hacer esto. Si realmente tuviera una necesidad aquí creo que podría lograr su objetivo más fácil haciendo lo siguiente:

  • Generar la documentación de la manera estándar
  • Analizar la documentación generada y fusionar dos usando un analizador DOM / XML (es decir, fusionar los dos en código y generar un nuevo documento HTML de una sola página con las URL actualizadas a los anclajes en la página actual)

Lo bueno es que hay un esquema de nomenclatura consistente utilizado en los archivos y enlaces generados, por lo que creo que sería más fácil escribir este proceso y actualizar todos los enlaces para que sean anclas que meterse demasiado con las plantillas. En realidad creo que esto sería bastante fácil de lograr para alguien experimentado con ese tipo de manipulación de documentos.

Advertencia: Ni siquiera estoy cerca de un experto en castillos de arena, solo lo he usado mínimamente y hace más de un año. Tampoco he pasado en ningún momento antes de hoy considerando cómo lo hackearía, solo usándolo fuera de la caja. Ni siquiera habría respondido a esto, salvo por la falta de otras respuestas. Puede haber una forma de configuración soportada para lograr esto, pero como usuario casual ni siquiera puedo pensar cómo abordarlo.

También estoy haciendo algunas suposiciones aquí acerca de cómo se vería la salida HTML basado en mi experiencia con el SHFB. Puede que yo también me esté sobrepasando. Ya no tengo un proyecto del que pueda generar documentación de castillos de arena, pero si alguien puede publicar un enlace a alguna salida HTML de Castillos de arena y está interesado en este enfoque, estaría encantado de ayudar más.

 2
Author: Matthew,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-02-05 16:55:45