¿Cómo configurar una página de aplicación como página de inicio de nuestro sitio?

Introducción


Supongamos un escenario en donde necesitemos una página de aplicación como home page de nuestro sitio con código C#.
El problema es que estas páginas no están soportadas, con lo cual debemos optar por un método de redireccionamiento.
En este breve artículo mostraremos este método completo desde Visual Studio sin utilizar la infraestructura de publicación de SharePoint (que ya dispone de un método de redireccionamiento a través de configuración y que pueden consultar en este enlace)
Paso 1

Vamos a crear una página HTML que maneja la redirección.
Y un módulo para desplegar esa página.
El módulo:
Reemplazamos sample.txt por nuestra página aspx:
El código de nuestra página HTML será:
<html>
<head>
<META http-equiv=»refresh» content=»0;URL=./_layouts/EMP_Procesos/HomePageSitioProyecto.aspx»>
</head>
</html>
Donde HomePageSitioProyecto es nuestra página de aplicación que desplegamos en LAYOUTS.
Así quedará el contenido de Elements.XML
<?xml version=»1.0″ encoding=»utf-8″?>
  <Module Name=»ModuleLayoutPageRedirect»>
    <File Path=»ModuleLayoutPageRedirect\LayoutPageRedirect.aspx» Url=»LayoutPageRedirect.aspx» />
  </Module>
</Elements>
Paso 2

A través de una feature y un evento, cambiamos la welcome page de nuestro sitio de esta forma:
SPFolder rootFolder = currentWeb.RootFolder;
string home = «LayoutPageRedirect.aspx«;
rootFolder.WelcomePage = home;
rootFolder.Update();
Paso 3

Activamos la feature y vamos a la home page del sitio:
http://server/plantilla_proyecto/plantilla_proyecto
Veremos que pasa por la página (casi imperceptiblemente):
http://server/plantilla_proyecto/LayoutPageRedirect.aspx
Y luego nos redirecciona a:
http://server/plantilla_proyecto/_layouts/EMP_Procesos/HomePageSitioProyecto.aspx

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *