我正在尝试工作如何删除Azure文件存储中的文件夹中的所有文件。
CloudFileDirectory.ListFilesAndDirectories()
返回IEnumerable
的IListFileItem
。但这并没有太大帮助,因为它没有filename属性或类似属性。
这是我到目前为止所拥有的:
var folder = root.GetDirectoryReference("myfolder");
if (folder.Exists()) {
foreach (var file in folder.ListFilesAndDirectories()) {
// How do I delete 'file'
}
}
如何将an更改IListFileItem
为aCloudFile
以进行呼叫myfile.Delete()
?
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
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句