EnumerateFiles以避免缓存

Ann*_*nie 5 c# directory

EnumerateFiles用来获取目录中的所有*.md:

foreach (var mdName in Directory.EnumerateFiles(Path.Combine(BaseDirectory,
                            "assets/markdowns"), "*.md", SearchOption.AllDirectories)) 
{
    // async md parser call goes here
}
Run Code Online (Sandbox Code Playgroud)

我有三个测试文件a.md,b.mdc.md.

现在当我将a.md重命名为a1.md时,EnumerateFiles返回旧的和新的文件名.来自PowerShell的结果说我有3个文件,而EnumerateFiles返回4个文件.

我在某处读过EnumerateFiles做了某种缓存,有延迟加载吗?但重命名文件时不应该使缓存失效吗?

GetFiles/EnumerateFiles输出:

[0]: "C:\\Repos\\KiddiesBlog\\Tests\\bin\\Debug\\assets/less\\a.md"
[1]: "C:\\Repos\\KiddiesBlog\\Tests\\bin\\Debug\\assets/less\\b.md"
[2]: "C:\\Repos\\KiddiesBlog\\Tests\\bin\\Debug\\assets/less\\c.md"
[3]: "C:\\Repos\\KiddiesBlog\\Tests\\bin\\Debug\\assets/less\\_a.md"
[4]: "C:\\Repos\\KiddiesBlog\\Tests\\bin\\Debug\\assets/less\\_a1.md"
[5]: "C:\\Repos\\KiddiesBlog\\Tests\\bin\\Debug\\assets/less\\_a2.md"
[6]: "C:\\Repos\\KiddiesBlog\\Tests\\bin\\Debug\\assets/less\\_a3.md"
Run Code Online (Sandbox Code Playgroud)

Ann*_*nie 1

结果是我的错误。有一个MSBuild任务负责在 Debug 目录中创建实际资产的卷影副本。里面有以前的所有文件。VS 不会清除 Clean Solution 上的文件夹。我想我需要修改这个任务来观察源目录中的变化。