C# 为什么我能';我不能用递归代码读取subdir
这是我的递归代码C# 为什么我能';我不能用递归代码读取subdir,c#,asp.net,.net,c#-4.0,C#,Asp.net,.net,C# 4.0,这是我的递归代码 private void recursiveSubDir(dynamic workingdirectories) { var targetDir = workingdirectories; foreach (string _selectedDir in targetDir) { var targetFile = Directory.GetFiles(_selectedDir);
private void recursiveSubDir(dynamic workingdirectories)
{
var targetDir = workingdirectories;
foreach (string _selectedDir in targetDir)
{
var targetFile = Directory.GetFiles(_selectedDir);
foreach (var selectedFile in targetFile)
{
string enc_selectedFile = GetMD5FromFile(selectedFile);
string[] md5text = File.ReadAllLines("md5 encryptor.txt");
foreach (string md5textcheck in md5text)
{
if (enc_selectedFile.Contains(md5textcheck))
{
virus = virus + 1;
}
}
}
MessageBox.Show(_selectedDir);
recursiveSubDir(_selectedDir);
}
}
我称之为递归
try{ string[] md5text = File.ReadAllLines("md5 encryptor.txt");
string[] files = Directory.GetFiles(lokdirek);
var dirs = Directory.GetDirectories(lokdirek, "*", SearchOption.TopDirectoryOnly).Where(d => !isexcluded(_excludeDirectories, d));
int directoryCount = System.IO.Directory.GetDirectories(lokdirek).Length;
recursiveSubDir(dirs); }
检查工作目录的类型。实际代码(您发送图片的源代码)与您发布的代码略有不同。图中是这样的:
foreach (var _selectedDir in targetDir)
所以这里是var而不是string,然后我们不能确定_selectedDir实际上是一个字符串。例如,它可以包含会产生类似错误的对象。如果你修正了这一点,使上面的一行与你发布的类似,并且在运行时得到InvalidCastException,那么我很确定这就是问题所在 当外部资源消失或修复时,依赖外部资源的问题将变得无用。当抛出异常时,
\u selectedDir
的确切值是多少?