Remplacer les récepteurs d’événements dans les solutions de bac à sable

L’approche que vous utilisez pour gérer les événements dans SharePoint est légèrement différente dans le modèle de complément SharePoint qu’avec du code de confiance totale ou dans des solutions de bac à sable codé. Dans les solutions précédentes classiques, les récepteurs d’événements étaient créés à l’aide du modèle objet SharePoint Server-Side et déployés via des packages de solutions, qui exécutaient le code sur les serveurs SharePoint.

Dans le modèle de complément SharePoint, toutefois, l’implémentation du récepteur d’événements s’exécute sur le serveur web qui héberge le récepteur d’événements ; ces derniers sont appelés récepteurs d’événements distants (RER). Les récepteurs d’événements peuvent dans de nombreux cas être remplacés par une implémentation de récepteur d’événements distant.

Cet article décrit différentes options et considérations relatives à la conception.

Remarque

L’utilisation des solutions bac à sable basées sur un code est déconseillée depuis 2014 et, dans SharePoint Online, cette fonctionnalité est sur le point d’être totalement supprimée. Les solutions bac à sable basées sur un code sont également déconseillées dans SharePoint 2013 et SharePoint 2016.

Options de remplacement des récepteurs d’événements

Approche Considérations relatives à la conception et plus d’informations
Récepteur d’événements distants
  • Nécessite l’infrastructure d’hébergement.
  • L’infrastructure d’hébergement doit être hautement disponible.
  • Le point de terminaison de service qui héberge le récepteur d’événements distants doit être configuré pour l’authentification anonyme.
  • Nécessite un certificat tiers approuvé si vous utilisez SharePoint Online.
  • Non destiné aux opérations de longue durée.
  • Les récepteurs d’événements distants attachés en dehors du contexte des compléments, attachés à l’aide d’une application console ou de PowerShell, ne recevront pas de jeton de contexte SharePoint lorsqu’ils sont appelés, et vous devez vous reporter aux autorisations de complément uniquement ou utiliser la classe SharePointOnlineCredentials.
  • Il n’existe aucun mécanisme de nouvelle tentative.
Webhooks
  • Exiger l’infrastructure d’hébergement.
  • L’infrastructure d’hébergement doit être hautement disponible.
  • Ne prenez pas en charge les événements synchrones.
  • Traitez les modifications après l’événement.
  • Non disponible dans les builds SharePoint locales pour l’instant.
Travail du minuteur à distance pour surveiller les modifications
  • Utilise l’objet ChangeQuery pour surveiller les modifications d’un site ou d’une liste. Ce modèle est une alternative aux récepteurs d’événements distants.
  • Nécessite une infrastructure d’hébergement.
  • Traite les modifications après l’événement.
  • Utilise un mécanisme d’interrogation pour traiter les modifications.

Suppression de code bac à sable de votre site

Lorsque vous désactivez votre solution de bac à sable existante de vos sites, les ressources ou fichiers déployés à l’aide d’options déclaratives ne sont pas supprimés. Toutefois, les fonctionnalités de la solution de bac à sable sont automatiquement désactivées et le récepteur d’événements est supprimé.

Voir aussi