我想知道如果我想跟踪递归方法中的文件夹数量,我该如何做到这一点,因此计数器不会每次都在循环中重置下面的代码?在递归调用中跟踪项目编号C#
// how to keep track of the number of sourceFolder that has been processed?
public void recursiveMethod(SPFolder sourceFolder, SPFolder destinationFolder)
{
int totalNumberOfFiles = sourceFolder.SubFolders.Count;
foreach (SPFolder sourceSubFolder in sourceFolder.SubFolders)
{
if (true)
{
SPFolder destSubFolder = null;
if (true)
{
destSubFolder = doSomething();
}
else
{
destSubFolder = doSomethingElse();
}
}
recursiveMethod(sourceSubFolder, destSubFolder);
}
}
这里的目标是要显示类似 “处理文件夹/100” 给用户。我无法保持文件夹计数而没有重新设置。假设:文件夹本身没有唯一的ID。
谢谢。
当然,然后让该方法返回计数。如果这不方便,可以通过引用传递计数。 – 2010-08-19 07:48:09
没错。您可以将该参数设为可选,默认值为0并完成该操作。 – ragerory 2015-12-03 03:47:25