2016-10-27 2 views
1

Ich fange an, mit der OneDrive-API für .net zu spielen, um eine Liste aller in einem Ordner enthaltenen Elemente zu erhalten mit dem folgenden Aufruf:Wie bekomme ich nur eine Liste der Ordner eines vorhandenen OneDrive-Ordners? C#

Item folder=null; 
     try 
     { 
      string expandValue = "thumbnails,children"; 

      folder = await a_oneDriveDevice.Drive.Root.ItemWithPath(path) 
          .Request() 
          .Expand(expandValue) 
          .GetAsync(); 

     } 
     catch (Exception ohno) 
     { 

     } 

aber ich nicht in der Lage gewesen, in der Dokumentation zu finden, was die richtigen Filter sind für den Expand() Funktion hinzuzufügen, nur eine Liste von Dateien (oder Ordnern) abgerufen werden. Kann mir jemand in die richtige Richtung zeigen?

Danke!

Antwort

1

Da Sie möchten, dass der Filter auf die untergeordneten Elemente des Artikels angewendet wird, den Sie anfordern, müssen Sie die expandValue aktualisieren. Da die API um OData gebaut ist, wird Ihr Filter tatsächlich eine Unteroption auf die Kinder Expansion werden, so wie dies etwas ist, was du bist nach:

string expandValue = "thumbnails,children(filter=folder%20ne%20null)"; 
+1

Außerdem wird für einen Ordner Thumbnails auf Anfrage erweitern Geben Sie nur Miniaturansichten für diesen Ordner an. Wenn Sie Thumbnails für die Kinder eines Ordners erhalten möchten, empfehle ich stattdessen diese Anfrage: 'Drive.Root.ItemWithPath (path) .Children.Request(). Expand (" Thumbnails "). Filter (" folder ne null ") .GetAsync() ' –

+0

Es funktioniert perfekt, danke! – Kutu

Verwandte Themen