2016-02-29 5 views
5

मैं काम करने की कोशिश कर रहा हूं कि Azure फ़ाइल संग्रहण में किसी फ़ोल्डर में सभी फ़ाइलों को कैसे हटाएं।मैं Azure फ़ाइल संग्रहण फ़ोल्डर में सभी फ़ाइलों को कैसे हटा सकता हूं?

CloudFileDirectory.ListFilesAndDirectories()IListFileItem का IEnumerable लौटाता है। लेकिन इससे ज्यादा मदद नहीं मिलती क्योंकि इसमें फ़ाइल नाम या संपत्ति नहीं है।

var folder = root.GetDirectoryReference("myfolder"); 

if (folder.Exists()) { 
    foreach (var file in folder.ListFilesAndDirectories()) { 

     // How do I delete 'file' 

    } 
} 

मैं कैसे बदल सकता हूँ एक IListFileItem एक CloudFile को तो मैं myfile.Delete() कॉल कर सकते हैं:

यह वही है मैं अब तक किया है?

उत्तर

10

ListFilesAndDirectories दोनों फाइलों और निर्देशिकाओं को वापस कर सकते हैं ताकि आप उन दोनों के लिए बेस क्लास प्राप्त कर सकें। फिर आप यह जांच सकते हैं कि किस प्रकार के प्रकार और कास्ट किया गया है। ध्यान दें कि आप किसी भी उप-निर्देशिका को ट्रैक करना चाहते हैं ताकि आप उन फ़ाइलों को दोबारा हटा सकें।

var folder = root.GetDirectoryReference("myfolder"); 

if (folder.Exists()) 
{ 
    foreach (var item in folder.ListFilesAndDirectories()) 
    {   
     if (item.GetType() == typeof(CloudFile)) 
     { 
      CloudFile file = (CloudFile)item; 

      // Do whatever 
     } 

     else if (item.GetType() == typeof(CloudFileDirectory)) 
     { 
      CloudFileDirectory dir = (CloudFileDirectory)item; 

      // Do whatever 
     } 
    } 
} 
+0

बिल्कुल सही, धन्यवाद! मुझे आश्चर्य हुआ कि यह ऐसा कैसे हो सकता है, लेकिन IListFileItem के आसपास एमएसडीएन दस्तावेज़ वास्तव में खराब हैं। – BG100

संबंधित मुद्दे

 संबंधित मुद्दे