Association de fonctions dans le modèle de complément SharePoint

L’approche que vous prenez pour exécuter du code et déployer des artefacts lorsqu’un site SharePoint est mis en service est différente dans le nouveau modèle de SharePoint Add-in par rapport au code de confiance totale. Dans un scénario classique de code de confiance totale /solution de batterie de serveurs, les définitions de site pré-adaptées ont été modifiées avec des fonctionnalités agrafables. Les fonctionnalités ont été utilisées pour mettre en package et déployer des artefacts, des configurations et des ressources de branding associées à un site SharePoint et les fonctionnalités ont été agrafés à la définition de site. Ensuite, les fonctionnalités agrafées ont été automatiquement installées et activées lors de la mise en service du site.

Dans un scénario de modèle de SharePoint, vous pouvez agrafer des fonctionnalités, agrafer des add-ins ou utiliser le modèle objet côté client SharePoint (CSOM) pour créer et configurer des collections de sites et des sous-sites, puis y déployer des artefacts, des configurations et des éléments de pertinence. Ce modèle est souvent appelé le motif mise en service à distance.

Conseils importants

En règle générale, nous voulons fournir les instructions de haut niveau suivantes pour créer et configurer des collections de sites et des sous-sites, puis déployer des artefacts, des configurations et des ressources de pertinence.

  • Vous pouvez toujours utiliser l’agrafage de fonctionnalités uniquement lorsque vous agrafez des fonctionnalités à des collections de sites et que vous utilisez des solutions bac à sable (sandbox) pour déployer les définitions de site et les fonctionnalités agrafée.
  • Vous pouvez utiliser le modèle d’agrafage de l’application avec les modules de déploiement de client pour implémenter des fonctionnalités similaires à l’agrafage de fonctionnalités.
  • Vous pouvez utiliser le modèle d’approvisionnement à distance pour implémenter des fonctionnalités similaires à l’agrafage de fonctionnalités en activant des fonctionnalités supplémentaires par-dessus la définition de site prédéquente via des API distantes.

Options de création et de configuration des collections de sites et des sous-sites, puis déploiement d’artefacts, de configurations et de ressources de personnalisation sur ces collections

Vous avez plusieurs options pour créer et configurer des collections de sites et des sous-sites, puis déployer des artefacts, des configurations et des ressources de personnalisation.

  • Fonctionnalités d’agrafer
  • Agrafez les modules de agrafer les modules
  • Utiliser le modèle d’approvisionnement à distance

Fonctionnalités d’agrafer

Dans ce modèle, vous agrafez les fonctionnalités aux définitions de site.

  • Ce modèle est uniquement disponible au niveau de la collection de sites.
  • Il n’est pas possible d’agrafer des fonctionnalités à des sous-sites.
  • Cette approche n’est pas optimale ou recommandée, car elle utilise des solutions bac à sable déconseillées et ne vous permet pas de configurer les mises à niveau de manière optimale.

Quand est-elle adaptée ?

Lorsque vous migrez du code hérité dans un environnement SharePoint local et que vous n’avez pas le temps de le réécrire correctement.

Prise en main

L’article suivant explique comment agrafer des fonctionnalités à une définition de site.

Agrafez les modules de agrafer les modules

Dans ce modèle, vous déployez des applications stockées dans le catalogue d’applications sur des collections de sites, des chemins d’accès gérés et des modèles de site spécifiques.

  • Pour plus d’informations sur le modèle d’agrafage de l’application, voir le déploiement d’applications SharePoint 2013 par le biais de l’agrafage d’applications (article de blog MSDN - Richard DiZerega).
  • Étant donné que le add-in est pushé par un administrateur, les propriétaires de site ne pourront pas supprimer le add-in d’un site qui répond aux critères de déploiement. Même un administrateur de collection de sites ne peut pas supprimer le add-in.
  • Ce déploiement centralisé partage également les mêmes ressources de add-in centralisées (site web de add-in et site web distant). Essentiellement, le add-in est déployé, mais pas installé dans les sites. Tous les sites tirent parti du site web de l’application et du site web distant à partir de l’instance installée dans le catalogue d’applications.
  • En raison du déploiement centralisé, les événements distants tels que « Gérer l’installation de l’application » et « Gérer la désinstallation de l’application » et « Gérer la mise à niveau de l’application » ne se sont produits qu’une seule fois (lorsque le Add-In est installé dans le catalogue d’applications).
    • Cela peut rendre difficile l’utilisation du modèle d’agrafage de l’application pour appliquer automatiquement les modifications aux sites où il est déployé, car ces événements ne se sont pas produits lorsqu’ils sont déployés sur des sites.
  • Les composants de add-in ne sont pas pris en charge lorsque les composants sont agrafés à des sites.
  • Ce modèle nécessite des actions manuelles de l’utilisateur pour déployer les add-ins.

Utiliser le modèle d’approvisionnement à distance

Dans ce modèle, vous utilisez le modèle objet côté client SharePoint (CSOM) pour créer et configurer des collections de sites et des sous-sites, puis vous déployez des artefacts, des configurations et des ressources de pertinence.

  • Ce modèle ne nécessite pas d’empaquetage d’artefacts, de configurations et d’éléments de branding dans des fonctionnalités distinctes ou des modules. Tout peut être empaqueté dans un seul et même module.

  • Lorsque vous utilisez ce modèle pour la mise en service de site, vous remplacez généralement la page pré-utilisée pour créer un site.

  • Pour plus d’informations sur ce modèle, voir mise en service de site (SharePoint recette de module complémentaire)

  • Si vous souhaitez déployer des add-ins sur un site SharePoint, vous pouvez le faire via CSOM. Voici un exemple qui charge un Office par le biais d’un fichier manifeste .app et l’installe dans un site SharePoint web.

    //Create a FileStream object to access the Mail Office Add-in .app file
    using (FileStream fsSource = new FileStream(System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath + "Innovation.Management.AFO.app",
      FileMode.Open, FileAccess.Read))
      {
    //Return the subweb where you want to install the Add-in
          var subweb = ctx.Web;
          ctx.Load(subweb);
          ctx.ExecuteQuery();
    
    //Load and Install the Add-in on the subweb
          AppInstance appInstance = subweb.LoadAndInstallApp(fsSource);
          ctx.Load(appInstance);
          ctx.ExecuteQuery();
      }
    

Exemples PnP

S’applique à

  • Office 365 multi-locataire (MT).
  • Office 365 dédiés (D)
  • SharePoint 2013 en local