Déplacer un objet DriveItem vers un nouveau dossier
Article
Espace de noms: microsoft.graph
Pour déplacer un objet DriveItem vers un nouvel élément parent, votre application demande de mettre à jour l’élément parentReference de l’objet DriveItem à déplacer.
Il s’agit d’un cas spécial de la méthode Update.
Votre application peut combiner le déplacement d’un élément vers un nouveau conteneur et la mise à jour d’autres propriétés de l’élément dans une requête unique.
Les éléments ne peuvent pas être déplacés entre des lecteurs à l’aide de cette demande.
Chaîne. Si cet en-tête de demande est inclus et que l’eTag (ou cTag) fourni ne correspond pas à l’eTag actuel sur le dossier, une réponse 412 Precondition Failed est renvoyée.
Corps de la demande
Dans le corps de la demande, fournissez la nouvelle valeur pour la propriété parentReference.
Les propriétés existantes qui ne sont pas incluses dans le corps de la demande conserveront leurs valeurs précédentes ou seront recalculées en fonction des modifications apportées à d’autres valeurs des propriétés.
Pour de meilleures performances, n’incluez pas de valeurs existantes qui n’ont pas changé.
Remarque : quand vous déplacez des éléments vers la racine d’un lecteur, votre application ne peut pas utiliser la syntaxe "id:" "root".
Votre application doit fournir l’ID actuel du dossier racine pour la référence parent.
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 200 OK et une ressource DriveItem mise à jour dans le corps de la réponse.
Exemple
Cet exemple déplace un élément spécifié par {item-id} dans un dossier situé dans le lecteur de l’utilisateur ayant pour ID new-parent-folder-id.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new DriveItem
{
ParentReference = new ItemReference
{
Id = "{new-parent-folder-id}",
},
Name = "new-item-name.txt",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Drives["{drive-id}"].Items["{driveItem-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewDriveItem()
parentReference := graphmodels.NewItemReference()
id := "{new-parent-folder-id}"
parentReference.SetId(&id)
requestBody.SetParentReference(parentReference)
name := "new-item-name.txt"
requestBody.SetName(&name)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
items, err := graphClient.Drives().ByDriveId("drive-id").Items().ByDriveItemId("driveItem-id").Patch(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
DriveItem driveItem = new DriveItem();
ItemReference parentReference = new ItemReference();
parentReference.setId("{new-parent-folder-id}");
driveItem.setParentReference(parentReference);
driveItem.setName("new-item-name.txt");
DriveItem result = graphClient.drives().byDriveId("{drive-id}").items().byDriveItemId("{driveItem-id}").patch(driveItem);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\DriveItem;
use Microsoft\Graph\Generated\Models\ItemReference;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new DriveItem();
$parentReference = new ItemReference();
$parentReference->setId('{new-parent-folder-id}');
$requestBody->setParentReference($parentReference);
$requestBody->setName('new-item-name.txt');
$result = $graphServiceClient->drives()->byDriveId('drive-id')->items()->byDriveItemId('driveItem-id')->patch($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.drive_item import DriveItem
from msgraph.generated.models.item_reference import ItemReference
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = DriveItem(
parent_reference = ItemReference(
id = "{new-parent-folder-id}",
),
name = "new-item-name.txt",
)
result = await graph_client.drives.by_drive_id('drive-id').items.by_drive_item_id('driveItem-id').patch(request_body)