如果文件发布到我的webapp,那么我通过它阅读MultipartFormDataStreamProvider.FileData.
我像这样初始化提供者:
string root = HttpContext.Current.Server.MapPath("~/App_Data");
var provider = new MultipartFormDataStreamProvider(root);
Run Code Online (Sandbox Code Playgroud)
并且提供程序很好地将它们存储为"~App_Data/BodyPart_ {someguid}"但是如何在完成这些文件之后清理它们?
您可以删除所有早于特定时间跨度的文件。例如
private void CleanTempFiles(string dir, int ageInMinutes)
{
string[] files = Directory.GetFiles(dir);
foreach (string file in files)
{
var time = File.GetCreationTime(file);
if (time.AddMinutes(ageInMinutes) < DateTime.Now)
{
File.Delete(file);
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后用类似的方式调用它:
CleanTempFiles(root, 60); // Delete all files older than 1 hour
Run Code Online (Sandbox Code Playgroud)