Partager via


Exemple de complément SharePoint de gestion des informations

L’exemple Core.InformationManagement vous montre comment utiliser un complément ASP.NET hébergé par un fournisseur pour obtenir et définir une stratégie de site sur un site.

Utilisez cette solution si vous souhaitez :

  • Appliquez les paramètres de stratégie pendant votre processus d’approvisionnement de site personnalisé.
  • Créez ou modifiez une stratégie de site existante.
  • Créez une formule d’expiration personnalisée.

Avant de commencer

Pour commencer, téléchargez l’exemple de complément Core.InformationManagement à partir du projet Office 365 Developer Patterns and Practices sur GitHub.

Remarque

Le code dans cet article est fourni tel quel, sans garantie d’aucune sorte, expresse ou implicite, y compris mais sans s’y limiter, aucune garantie implicite d’adéquation à un usage particulier, à une qualité marchande ou une absence de contrefaçon.

Nous vous recommandons de créer au moins une stratégie de site et de l’affecter à votre site avant d’exécuter ce complément. Sinon, le complément démarre sans afficher d’exemples de données. Pour plus d’informations, voir Vue d’ensemble des stratégies de site dans SharePoint Server.

Utilisation de l’exemple de complément Core.InformationManagement

Lorsque vous démarrez le complément Gestion des informations, la page de démarrage affiche les informations suivantes, comme illustré dans la figure suivante :

  • Dates de fermeture et d’expiration du site. Ces dates sont spécifiques à un site et sont basées sur les paramètres de configuration de la stratégie de site appliquée.
  • Toutes les stratégies de site qui peuvent être appliquées au site.
  • Stratégie de site actuellement appliquée.
  • Zone d’option permettant de sélectionner et d’appliquer une nouvelle stratégie de site au site.

Capture d’écran de la page de démarrage du complément, avec les valeurs de fermeture et d’expiration de la stratégie de site, les stratégies de site disponibles et appliquées et les autres stratégies à appliquer mises en surbrillance.

À partir de votre site SharePoint, vous pouvez accéder au complément, qui s’exécute sur l’hôte distant, en choisissant Recent>Core.InformationManagement. Pour revenir à votre site SharePoint, choisissez Revenir au site.

Le fichier Pages\Default.aspx.cs dans le projet Core.InformationManagementWeb contient le code de la page affichée dans la figure précédente.

Le code suivant dans la méthode Page_Load de la page Default.aspx.cs extrait et affiche les dates de fermeture et d’expiration du site, en fonction de la stratégie de site appliquée. Ce code appelle les méthodes d’extension GetSiteExpirationDate et GetSiteCloseDate du projet OfficeDevPnP.Core.

// Get site expiration and closure dates.
if (cc.Web.HasSitePolicyApplied())
{
        lblSiteExpiration.Text = String.Format("The expiration date for the site is {0}", cc.Web.GetSiteExpirationDate());
        lblSiteClosure.Text = String.Format("The closure date for the site is {0}", cc.Web.GetSiteCloseDate());
}


Le code suivant dans la méthode Page_Load de la page Default.aspx.cs affiche les noms de toutes les stratégies de site qui peuvent être appliquées au site (y compris la stratégie de site actuellement appliquée). Ce code appelle la méthode d’extension GetSitePolicies du projet OfficeDevPnP.Core.

// List the defined policies.
List<SitePolicyEntity> policies = cc.Web.GetSitePolicies();
string policiesString = "";
foreach (var policy in policies)
                    {
                        policiesString += String.Format("{0} ({1}) <BR />", policy.Name, policy.Description);
                    }
lblSitePolicies.Text = policiesString;
            };


Le code suivant dans la méthode Page_Load de la page Default.aspx.cs affiche le nom de la stratégie de site actuellement appliquée au site. Cela appelle la méthode d’extension GetAppliedSitePolicy du projet OfficeDevPnP.Core.

// Show the assigned policy.
SitePolicyEntity appliedPolicy = cc.Web.GetAppliedSitePolicy();
if (appliedPolicy != null)
            {
            lblAppliedPolicy.Text = String.Format("{0} ({1})", appliedPolicy.Name, appliedPolicy.Description);
            }
else
            {
            lblAppliedPolicy.Text = "No policy has been applied";
            }


Le code suivant dans la méthode Page_Load de la page Default.aspx.cs remplit la liste avec les stratégies de site disponibles, à l’exception de la stratégie de site actuellement affectée au site.

// Fill the policies combo.
foreach (var policy in policies)
{
if (appliedPolicy == null || !policy.Name.Equals(appliedPolicy.Name, StringComparison.InvariantCultureIgnoreCase))
{
                            drlPolicies.Items.Add(policy.Name);
           }
}
btnApplyPolicy.Enabled = drlPolicies.Items.Count > 0;


Le code suivant dans la page Default.aspx.cs applique la stratégie de site sélectionnée au site. La stratégie de site d’origine est remplacée par la nouvelle stratégie de site.

protected void btnApplyPolicy_Click(object sender, EventArgs e)
{
if (drlPolicies.SelectedItem != null)
            {
                cc.Web.ApplySitePolicy(drlPolicies.SelectedItem.Text);
                Page.Response.Redirect(Page.Request.Url.ToString(), true);
            }
}

Voir aussi