El mejor enfoque para la adición de un elemento web a una página existente en múltiples entornos

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/2529

  •  16-10-2019
  •  | 
  •  

Pregunta

Si tienes una página existente en cada entorno, por ejemplo, default.aspx y desea agregar un elemento web y promover a cada entorno de lo que es el mejor enfoque?

  1. Crear un PSA con una función de receptor y añadir a la página a través de la activación
  2. Crear un PSA con una característica y añadir un módulo con AllUserWebParts (requiere el despliegue de la página aspx con él aunque)
  3. Manual de exportación e importación web parte
  4. script de PowerShell utilizando SPLimitedWebPartManager
  5. Otro ...
¿Fue útil?

Solución

Se puede encontrar el modelo de objetos SP2010 usefule cliente aquí. Exportar el elemento Web a un archivo de descripción de control de elementos Web (o .dwp .webpart) y luego darle la vuelta en este aspecto:

using (ClientContext context = new ClientContext("http://server")) {

    Web web = context.Web;
    File file = web.GetFileByServerRelativeUrl("/SitePages/Default.aspx");
    LimitedWebPartManager wpMgr = file.GetLimitedWebPartManager(
        PersonalizationScope.Shared);

    WebPartDefinition webPartDef = wpMgr.ImportWebPart(  
        System.IO.File.ReadAllText("Content_Editor.dwp"));
    wpMgr.AddWebPart(webPartDef.WebPart, "Left", 1);

    context.ExecuteQuery();
}

Otros consejos

En la categoría de "Otros", simplemente copia y pega el código de la página en un ambiente a otro en SharePoint Designer. Todo depende de los requerimientos del negocio, ¿no es así?

Licenciado bajo: CC-BY-SA con atribución
scroll top