- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找一种 C# 方法,该方法将返回 Azure 文件共享中的所有文件(所有子目录中)。
有一个示例,但它会引发运行时错误。我已经尝试了下面的代码示例,但它抛出了异常。
我已将代码粘贴到此处,但如果有人有一种方法可以遍历整个 Azure 目录获取文件,那就太好了。
CloudFileDirectory dir = fclient.GetShareReference(share.ToString()).GetRootDirectoryReference();
foreach (IListFileItem file in dir.ListFilesAndDirectories()) //.Directory.ListFilesAndDirectories())
{
list_subdir(file);
}
还有方法。
public static void list_subdir(IListFileItem list)
{
Console.WriteLine("subdir");
CloudFileDirectory fileDirectory = (CloudFileDirectory)list;
IEnumerable<IListFileItem> fileList = fileDirectory.ListFilesAndDirectories();
foreach (IListFileItem listItem in fileList)
{
if (listItem.GetType() == typeof(Microsoft.WindowsAzure.Storage.File.CloudFileDirectory))
{
list_subdir(listItem);
}
else
{
Console.WriteLine(listItem.Uri.Segments.Last());
}
}
}
”位于 Microsoft.WindowsAzure.Storage.Core.Executor.Executor.d__1 1.MoveNext()
1.b__0() 中 C:\Program Files (x86)\Jenkins\workspace\dotnet-split-pr-master\Lib\ClassLibraryCommon\Core\Executor\Executor.cs:第 41 行
in C:\Program Files (x86)\Jenkins\workspace\dotnet-split-pr-master\Lib\ClassLibraryCommon\Core\Executor\Executor.cs:line 82
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.<>c__DisplayClass0_0
最佳答案
我有 nuget 包 WindowsAzure.Storage ,已安装版本9.3.3。下面的代码对我来说效果很好,列出了子目录中的所有文件。
static void Main(string[] args)
{
string accountName = "xxx";
string key = "xxxx";
var storageAccount = new CloudStorageAccount(new StorageCredentials(accountName, key), true);
var share = storageAccount.CreateCloudFileClient().GetShareReference("testfolder");
IEnumerable<IListFileItem> fileList = share.GetRootDirectoryReference().ListFilesAndDirectories();
foreach (IListFileItem listItem in fileList)
{
if (listItem.GetType() == typeof(CloudFile))
{
Console.WriteLine(listItem.Uri.Segments.Last());
}
else if(listItem.GetType() == typeof(CloudFileDirectory))
{
list_subdir(listItem);
}
}
Console.WriteLine("done now");
Console.ReadLine();
}
public static void list_subdir(IListFileItem list)
{
//Console.WriteLine("subdir");
CloudFileDirectory fileDirectory = (CloudFileDirectory)list;
IEnumerable<IListFileItem> fileList = fileDirectory.ListFilesAndDirectories();
foreach (IListFileItem listItem in fileList)
{
if (listItem.GetType() == typeof(CloudFileDirectory))
{
list_subdir(listItem);
}
else
{
Console.WriteLine(listItem.Uri.Segments.Last());
}
}
}
文件共享中的目录:
根:
子目录1:
子目录2:
测试结果:列出子目录下的所有文件:
关于c# - 获取 Azure 文件共享 (CloudFileDirectory) 中的所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55362899/
我发现了很多关于如何移动 Azure CloudFile 的信息。但我需要移动整个CloudFileDirectory。我真的希望我不必循环遍历目录中的所有文件并一次移动它们。 注意:我们使用的是 M
我正在寻找一种 C# 方法,该方法将返回 Azure 文件共享中的所有文件(所有子目录中)。 有一个示例,但它会引发运行时错误。我已经尝试了下面的代码示例,但它抛出了异常。 我已将代码粘贴到此处,但如
到目前为止,我已经掌握了我的 CloudFileDirectory并调用此方法会给我一个列表 IListFileItem对象,给定 CloudFileDirectory 中的每个文件和目录为 1 ,但
我已经创建了一个自定义模块作为 PowerShell 类,大致遵循 Writing a custom DSC resource with PowerShell classes 中提供的说明。 。目的是
我是一名优秀的程序员,十分优秀!