在参数中声明IDisposable时如何处理它?

2 .net c# idisposable

SendEmail("message", "subject", new System.Net.Mail.Attachment(path1), new System.Net.Mail.Attachment(path2));
Run Code Online (Sandbox Code Playgroud)

如何处理参数中的最后两个附件?完成后会自行处理吗?

Alb*_*reo 7

你不能,因为你没有对它们的引用.

将它们移到方法调用之外:

using (var attachment1 = new System.Net.Mail.Attachment(path1))
using (var attachment2 = new System.Net.Mail.Attachment(path2))
{
    SendEmail("message", "subject", attachment1, attachment2);
}
Run Code Online (Sandbox Code Playgroud)