これは私の機能です。私はすでにクライアントとメッセージの両方をusing句にラップし、コード検査を実行するとエラーが発生します。エラーポイントは最初の行を使用する: Microsoft.Reliability:方法 'においてEmail.Send(MailItem)'、オブジェクト 'コード検査では、オブジェクトを破棄する必要があると言います。どれ?
1 CA2000警告:
public static void Send(MailItem mail) { var sender = Membership.GetUser(mail.CreatedBy); if (sender == null) { return; } using (var msg = new MailMessage { From = new MailAddress(ConfigurationManager.AppSettings["EmailSender"], ConfigurationManager.AppSettings["EmailSenderName"]) }) { foreach (var recipient in mail.MailRecipients) { var recipientX = Membership.GetUser(recipient.UserKey); if (recipientX == null) { continue; } msg.To.Add(new MailAddress(recipientX.Email, recipientX.UserName)); } msg.Subject = "[From: " + sender.UserName + "]" + mail.Subject; msg.Body = mail.Body; if (HttpContext.Current != null) { msg.Body += Environment.NewLine + Environment.NewLine + "To reply via Web click link below:" + Environment.NewLine; msg.Body += ConfigurationManager.AppSettings["MailPagePath"] + "?AID=" + ContextManager.CurrentAccount.AccountId + "&RUN=" + sender.UserName; } try { using (var emailClient = new SmtpClient()) { emailClient.Send(msg); } } catch (Exception ex) { Logger.LogException(ex); } } }
これは私が取得警告されます<> g_ initLocal0 'はすべての例外パスに沿って に配置されていません。 System.IDisposable.Dispose on object '<> g _initLocal0'すべての への参照は スコープ外です。 C:\ CodeWorkspace \コード\ユーティリティ\ Email.cs 41
あなたのコードの41行目は何ですか? – BrokenGlass
@BrokenGlass:彼のコードの41行目の*は何ですか? – Mehrdad
@Mehrdad:これはファイル内のコードの一部にすぎないと考えることは不可能です。 – BrokenGlass