Desplegar Solución de forma no global

Cuando preparamos paquetes de solución para nuestras aplicaciones de SharePoint, la forma natural en la que Visual Studio nos prepara dichos paquetes, es para hacer un despliegue Global. ¿Qué quiere decir un despliegue global? Quiere decir que el paquete se va a desplegar para estar disponible en todas las Web Applications que están en la granja.

Desde el punto de vista de soluciones de SharePoint, esta es la forma normal, para poder reutilizar soluciones y para poder usar características entre Web Applications. Pero no siempre queremos que sea así, y hay veces que tenemos la necesidad de desplegar una solución de forma única para una determinada Web Application en concreto.

Vamos con un ejemplo. Si montamos un Timer Job para que se despliegue de forma global, basta con generar la clase del Job, una Feature con la activación del mismo, y un paquete de solución por defecto que incluya dicha feature:

image

image

Y desplegamos desde Visual Studio:

image

Y ahora si comprobamos desde la Administración Central cómo ha quedado desplegado nuestro paquete, podremos ver que se ha desplegado de forma Global:

image

Ahora vamos a generar un paquete diferente para que se despliegue a la que nosotros queremos.

Para ello hay que modificar desde Visual Studio el paquete, teniendo que prescindir del Wizard y haciendo la edición manual mediante XML. Básicamente se trata de añadir una entrada de Safe Control a la DLL que se genera en nuestro proyecto de SharePoint. Si tuvieramos más componentes propios y / o de terceros, esos se quedarían como están. Sólo hay que añadir el Safe Control al Assembly del proyecto de SharePoint.

Para ello, lo primero de todo, localizamos el paquete, y desde la pestaña de Manifest, hacemos clic en la parte inferior en Edit Options, donde podemos decir que queremos abrir el diseñador en modo XML:

image

image

Una vez confirmada la advertencia, editamos en el modo XML:

image

Y veremos algo similar a esto:

image

Hay que añadir por lo tanto una etiqueta de Safe Control al Assembly del proyecto, de forma que quedaría algo como la siguiente:

image

Ahora si desplegamos nuestro paquete, y revisamos desde la Administración Central el estado de nuestra solución, veremos que ya está desplegada para una Web Application en concreto:

image

0 comentarios:

Publicar un comentario

SharePoint Between Racks © 2012
. Con la tecnología de Blogger.

¡Compártelo!


Estoy en LinkedIn!


Ve mi perfil en LinkedIn!