Actualizando parcialmente nuestras páginas en ASP.Net
Ya hemos comentado anteriormente cómo publicar nuestras páginas ASP.Net en Domitienda a través del asistente que nos ofrece Visual Studio. Sin embargo, este proceso automatizado nos obliga a subir la web entera en cada ocasión en lugar de poder actualizar tan solo la parte que haya cambiado.
Antes de realizar este proceso, es necesario averiguar en que modo está compilada ya que existen dos modos en los Web Sites de Visual Studio 2005. Esto lo podemos averiguar en el menú Build > Publicar sitio web. Para poder cumplir nuestro objetivo y actualizar solo la parte que hemos cambiado de la página web deberá estar activada la opción “Utilizar nomenclatura fija y ensamblados de una sola página“. Si no teníamos esta opción activa será necesario volver a subir la web entera una vez mas.
Una vez realizado esto, procederemos a publicar nuestra web (Build > Publicar sitio web de nuevo) pero especificaremos una carpeta local en lugar de un FTP. De este modo la web entera se generará en la carpeta indicada de nuestro equipo. Hay varios tipos de archivos:
- Páginas ASPX. Tendremos que subir manualmente a través de un cliente FTP como FileZilla tan solo aquellas que hayamos modificado.
- Archivos DLL. Se encuentran dentro de la carpeta BIN y veremos que aunque con una nomenclatura algo extraña, tenemos uno por cada página. Subiremos solo aquellos que hayamos modificado. Si tenemos clases, datasets, o cualquier elemento con código externo a las páginas en nuestro proyecto y realizamos alguna modificación en ellos deberemos volver a subir el archivo App_Code.dll
- Web.config y PreCompiledApp.config: Configuran aspectos de la página y tan solo será necesario volver a subirlos en caso de realizar algún cambio en ellos.
Recordad que esto funcionará correctamente si tenemos la opción “Utilizar nomenclatura fija y ensamblados de una sola página” activa y evidentemente habiendo subido una primera vez la web entera con este modo activado. De este modo evitamos estar “machacando” la web en cada ocasión, con el consiguiente ahorro de tiempo y disminución de problemas.
Un saludo a todos!





Hay una opción que dice “permitir que este sitio web se actualice”. Entiendo que esto es para permitir ciertos cambios en las páginas ASPX sin tener que recompilar la aplicación. ¿Pero qué tipo de cambios son éstos? ¿No se supone que cada control de servidor tiene una clase subyacente? Por ejemplo, en este escenario, si cambio una propiedad a un control de servidor, basta con cambiar el ASPX en producción o también tengo que subir la DDL correspondiente?
Buenas Tardes Alfredo,
con este método de publicación si modificas un control de un ASPX y NO TOCAS el código cs/vb correspondiente bastaría con subir el .aspx al servidor.
Los ficheros dll incluyen la codificación subyancente de cada página aspx así como las respuestas a eventos que el aspx genera.
¡Saludos!