gpt4 book ai didi

c# - 删除文件出现错误(进程无法访问该文件..)

转载 作者:行者123 更新时间:2023-11-30 20:41:22 24 4
gpt4 key购买 nike

我目前正在调试我的代码,因为它给了我一个错误:

The process cannot access the file because it is being used by another process.

我认为错误发生在这行代码中

foreach (var filename in filenames)
{
var file = Path.Combine(filePath, filename);
mail.Attachments.Add(new Attachment(file));
}

// Send Mail
smtpServer.Send(mail);

DeleteFiles();

我想在使用此方法发送邮件时删除文件夹中的文件

private void DeleteFiles()
{
string filePath = Server.MapPath("~/Content/attachments");
Array.ForEach(Directory.GetFiles(filePath), System.IO.File.Delete);
}

我读到有关关闭/处置? FileStream 等,但我如何在我的代码中使用它?提前致谢。

最佳答案

mail.dispose(); 您应该在删除文件之前处理邮件。这应该删除文件上的锁定。

foreach (var filename in filenames)
{
var file = Path.Combine(filePath, filename);
mail.Attachments.Add(new Attachment(file));
}

// Send Mail
smtpServer.Send(mail);
mail.Dispose();
DeleteFiles();

https://msdn.microsoft.com/en-us/library/0w54a951(v=vs.110).aspx

关于c# - 删除文件出现错误(进程无法访问该文件..),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32409132/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com