Exemple de gestion des SharePoint de gestion des informations

L’exemple Core.InformationManagement vous montre comment utiliser un 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 au cours de votre processus de mise en service de site personnalisé.
  • Créez une stratégie de site existante ou modifiez-la.
  • Créez une formule d’expiration personnalisée.

Avant de commencer

Pour commencer, téléchargez l’exemple de add-in Core.InformationManagement à partir du projet Pratiques et modèles de développement Office 365 sur GitHub.

Notes

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 module. Dans le cas contraire, le add-in démarre sans afficher d’exemples de données. Pour plus d’informations, voir Vue d’ensemble des stratégiesde site dans SharePoint Server.

Utilisation de l’exemple de add-in Core.InformationManagement

Lorsque vous démarrez le module de 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 pour sélectionner et appliquer une nouvelle stratégie de site au site.

Screenshot of the add-in start page, with site policy closure and expiration values, available and applied site policies, and other policies to apply highlighted.

À partir SharePoint site web, vous pouvez aller au module complémentaire, qui s’exécute sur l’hôte distant, en choisissant Recent > Core.InformationManagement. Pour revenir à votre site SharePoint, choisissez Retour au site.

Le fichier Pages\Default.aspx.cs du 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 récupère 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 de 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 de 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