Compartir página aspx entre proyectos

Tenemos una solución con múltiples proyectos web, y hay algunas páginas que deberían estar presentes en varios de ellos. Por lo tanto, necesitaríamos algún tipo de proyecto compartido que contenga archivos aspx y al que puedan hacer referencia otros proyectos web.

Ahora hay algunas implementaciones por ahí:

Una implementacióndescrito por ScottGu, que implica construir el proyecto compartido y copiar el aspx de salida en el proyecto host y hacer referencia a la dll del aspx. Este método tiene la desventaja de que si el apsx se modifica, debe volver a copiarse.

Otra opción, basada enDavid Ebbo's post sería convertir el aspx en ascx-es, que puede ser referenciado como controles personalizados, y luego incluir esos aspx-es de control personalizado en el proyecto host dentro de algunas páginas de marcador de posición. Pero mis preocupaciones son: ¿pueden todas las páginas apsx transformarse en un ascx? Quiero decir que no hay ningún evento Page.LoadComplete en los controles de usuario, por ejemplo.

Y otra opción más es usar directorios virtuales que se mapeen en el proyecto web compartido, como se describe en un MicrosoftKB article. El problema nuevamente con este método es que los aspx-es compartidos deben estar en directorios predefinidos (que es el directorio virtual). Si el nombre del directorio virtual se superpone a un directorio físico, el virtual lo anula y no se pueden usar páginas de este último. ¿Es posible fusionar estos dos juntos?

¿Alguna idea? Gracias de antemano P.S. ¿Qué hay de depurar las páginas compartidas?

Respuestas a la pregunta(4)

Su respuesta a la pregunta