Approvisionnement des sites d’équipe classiques dans un environnement multigéographique
Les sites SharePoint peuvent se trouver dans différents emplacements géographiques par défaut et satellites d’un client multigéographique. Quand votre développement personnalisé (script, application, application console, application node.js, etc.) doit approvisionner des sites, il est important de tenir compte des emplacements géographiques dans votre client multigéographique.
Quand vous approvisionnez des collections de sites d’équipe classiques (par exemple, des collections de sites basées sur STS#0), utilisez l’appel de méthode CreateSite du modèle CSOM comme décrit et illustré dans les articles et exemples suivants :
- Approvisionnement des sites dans le modèle de complément SharePoint
- Mise en service de sites par lots avec le modèle de complément
- Création d’une collection de sites ou d’un sous-site à l’aide de la bibliothèque PnP Sites Core
L’appel de méthode CreateSite
doit être exécuté sur un objet Tenant
instancié. De plus, un objet client nécessite que vous indiquiez l’URL du centre d’administration SPO à créer.
Pour créer un site d’équipe classique :
Déterminez l’emplacement géographique qui doit héberger la collection de sites (par exemple, l’emplacement satellite Europe).
Suivez les instructions décrites dans l’article Détection de la configuration d’un client multigéographique pour rechercher l’URL du site racine SharePoint et du site d’administration du client correspondant à l’emplacement géographique.
Créez un objet
Tenant
à l’aide de l’URL du site d’administration détecté.Utilisez l’appel de méthode
CreateSite
pour créer la collection de sites.
L’exemple suivant montre comment approvisionner une collection de sites dans l’emplacement géographique Europe.
// Use the Multi-Geo discovery guidance to discover the tenant admin and root site URLs for this geo location.
string tenantAdminSiteForMyGeoLocation = "https://contoso-europe-admin.sharepoint.com";
string targetUrl = "https://contoso-europe.sharepoint.com/sites/demosite";
string owner = "UserA@contoso.onmicrosoft.com";
using (var ctx = new ClientRuntimeContext(tenantAdminSiteForMyGeoLocation))
{
ctx.Credentials = adminCredentials;
var tenant = new Tenant(ctx);
//Create new site.
var newsite = new SiteCreationProperties()
{
Url = targetUrl,
Owner = owner,
Template = "STS#0",
Title = title,
StorageMaximumLevel = 1000,
StorageWarningLevel = 500,
TimeZoneId = 7,
};
var spoOperation = tenant.CreateSite(newsite);
ctx.Load(spoOperation);
ctx.ExecuteQuery();
while (!spoOperation.IsComplete)
{
Thread.Sleep(2000);
ctx.Load(spoOperation);
ctx.ExecuteQuery();
Console.WriteLine("Site creation status: " + (spoOperation.IsComplete ? "waiting" : "complete"));
}
}
Remarque
Pour en savoir plus sur les autorisations et la configuration de vos applications, consultez l’article relatif à la configuration d’un exemple d’application multigéographique.