Récupérer l’URL d’une bibliothèque de pages

Découvrez comment récupérer l'URL de la liste des pages pour un site de publication web dans une collection de sites qui diffère du contexte actuel.

Principaux concepts à connaître pour la récupération de l'URL d'une liste de Pages

Lorsque vous développez des applications personnalisées pour les sites de publication, vous pouvez remarquer que le modèle d'objet PublishingWeb n'expose pas un moyen de récupérer l'URL de la liste des Pages d'un site de publication web dans une collection de sites qui diffère du contexte actuel. Bien que la classe PublishingWeb à la ligne de la classe SPWeb pour les instances dont la fonctionnalité de publication est activée, la classe n'est pas destiné à être utilisé pour instancier des objets SPWeb en dehors du contexte actuel.

Si vous avez besoin extraire l'URL de la liste des Pages pour une application web différente, vous pouvez interroger la propriété Properties . Dans la mesure où l'objet PublishingWeb est l'objet SPWeb d'un site de publication, vous pouvez interroger la propriété Properties et écrire son contenu dans une application console. Si l' entrée Key = vti_pageslistname, Value = {the URL to the Pages library} est retournée dans la console, {l'URL de la bibliothèque de Pages} est l'URL de la liste des Pages.

Le tableau 1. Concepts de base pour l'extraction de l'URL d'une bibliothèque de Pages

Titre d’article Description
Bibliothèque de pages
Une bibliothèque de documents qui contient toutes les pages de contenu pour un site de publication.
SPWeb
Cet objet représente un site Web SharePoint Foundation.
Properties
Obtient un objet SPPropertyBag avec les métadonnées du site Web actuel.
SPPropertyBag
Stocke des paires clé / valeur arbitraires qui contiennent des paramètres de propriété personnalisée.
PublishingWeb
Fournit le comportement de publication pour une instance de SPWeb qui prend en charge la publication.

Récupérer l'URL d'une liste de Pages pour un site de publication web dans une collection de sites qui diffère du contexte actuel

Cet exemple d'application console accède à la propriété Properties , effectue une itération dans la collection et écrit chaque paire clé/valeur dans la console.

Requête de la propriété SPWeb.Properties de l'URL à la liste des Pages

  1. Écrire l'application console.

  2. Permet d'afficher la sortie dans la console.

Exemple : SPWeb.Properties de requête de propriété de l'URL à la liste des Pages

L'application interroge l'objet SPPropertyBag , effectue une itération dans ses entrées de dictionnaires et écrit ces entrées dans la console.


using System;
using System.Collections;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            using (SPSite site = new SPSite("http://localhost"))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    SPPropertyBag props = web.Properties;
                    foreach (DictionaryEntry de in props)
                    {
                        Console.WriteLine("Key = {0}, Value = {1}", de.Key, de.Value);
                    }
                }
            }
            Console.ReadLine();
        }
    }
}

La sortie de cette application imprime sur la console varie en fonction de site Web sur le site Web, mais il peut se présenter comme suit :


Key = vti_associatemembergroup, Value = 5
Key = vti_extenderversion, Value = 14.0.0.4016
Key = vti_associatevisitorgroup, Value = 4
Key = vti_associategroups, Value = 5;4;3
Key = vti_createdassociategroups, Value = 3;4;5
Key = vti_siteusagetotalbandwidth, Value = 547
Key = vti_siteusagetotalvisits, Value = 9
Key = vti_associateownergroup, Value = 3
Key = vti_defaultlanguage, Value = en-us
Key = vti_pageslistname, Value = {the URL to the Pages list}

Voir aussi