2016-10-13 3 views
0

Ich arbeite mit dem OneDrive SDK und habe es erfolgreich geschafft, einen Verweis auf meinen speziellen App-Ordner zu bekommen.Onedrive special App Ordner - Erstellen eines neuen Ordners

_appFolder = await OneDriveClient.Drive.Special.AppRoot.Request().GetAsync(); 

Von hier möchte ich einen Unterordner namens "Deep Purple" erstellen.

Mit Blick auf dem C# Beispielcode ich dies mit tun können:

var folderToCreate = new Item { Name = artistName, Folder = new Folder() }; 
     var newFolder = await OneDriveClient 
            .Drive 
            .Items[itemId] 
            .Children 
            .Request() 
            .AddAsync(folderToCreate); 

Aber ich denke, ich habe bereits einen Verweis nach unten auf Artikel [itemId] (meine _appFolder vom Typ Artikel ist), so dass ich kann einfach verwenden:

Aber nein, wie Sie an diesem Bild sehen können, habe ich keine Anfrage-Option.

No Request() Option

Ich bin Missverständnis klar etwas.

Antwort

1

Ihr Problem ist, dass Sie verwenden eine Model (Objektdarstellungen von Antwortdaten) und versuchen, ein Request zu erhalten, die nur vom Typ RequestBuilder zurückgeführt wird. Sie sind in der Nähe, obwohl! Wenn Sie eine Datei an die Kinder der App-Ordner hinzufügen möchten (die vom Typ ist Folder), dann Ihre Anfrage würde wie folgt aussehen:

var newFolder = await oneDriveClient 
    .Drive 
    .Items[_appFolder.Id] 
    .Children 
    .Request() 
    .AddAsync(folderToCreate); 

Im Kern beruht das SDK auf dem OneDriveClient Objekt zu erzeugen, Anfragen, weil es Dinge wie Authentifizierung und URL-Generierung versteht. Die Model s sind nur Container für Informationen, die vom Dienst zurückgegeben werden. Sie können die Informationen in diesen Containern gemeinsam mit dem Client verwenden, um eine Anforderung zu generieren, die Sie benötigen.

Verwandte Themen