Share via


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 :

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 :

  1. Déterminez l’emplacement géographique qui doit héberger la collection de sites (par exemple, l’emplacement satellite Europe).

  2. 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.

  3. Créez un objet Tenant à l’aide de l’URL du site d’administration détecté.

  4. 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.

Voir aussi