0

ASP.NET/C# アプリケーション (mvc3) で、メールを送信できるようにしたいと考えています。

これは私がそのために使用している関数です:

    public static void SendEmail(string fromEmail, string fromName, string toEmail, string toName, string subject, string emailBody, bool isBodyHtml, string[] attachments, string emailServer, int portNumber, string loginName, string loginPassword)
    {
        // setup email header
        System.Net.Mail.MailMessage mailMessage = new System.Net.Mail.MailMessage();

        // Set the message sender
        // sets the from address for this e-mail message.
        mailMessage.From = new System.Net.Mail.MailAddress(fromEmail, fromName);
        // Sets the address collection that contains the recipients of this e-mail message.
        string[] toEmailList = toEmail.Split(',');
        string[] toNameList = toName.Split(',');
        for (int i = 0;i<toEmailList.Length;++i) 
        {
            mailMessage.To.Add(new System.Net.Mail.MailAddress(toEmailList[i],toNameList[i]));
        }
      //  mailMessage.To.(new System.Net.Mail.MailAddress(toEmail, toName));

        // sets the message subject.
        mailMessage.Subject = subject;
        // sets the message body.
        mailMessage.Body = emailBody;
        // sets a value indicating whether the mail message body is in Html.
        // if this is false then ContentType of the Body content is "text/plain".
        mailMessage.IsBodyHtml = isBodyHtml;

        // add all the file attachments if we have any
        if (attachments != null && attachments.Length > 0)
            foreach (string _Attachment in attachments)
                mailMessage.Attachments.Add(new System.Net.Mail.Attachment(_Attachment));

        // SmtpClient Class Allows applications to send e-mail by using the Simple Mail Transfer Protocol (SMTP).
        System.Net.Mail.SmtpClient _SmtpClient = new System.Net.Mail.SmtpClient(emailServer);

        //Specifies how email messages are delivered. Here Email is sent through the network to an SMTP server.
        _SmtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;

        // Some SMTP server will require that you first authenticate against the server.
        // Provides credentials for password-based authentication schemes such as basic, digest, NTLM, and Kerberos authentication.
        System.Net.NetworkCredential _NetworkCredential = new System.Net.NetworkCredential(loginName, loginPassword);
        _SmtpClient.UseDefaultCredentials = false;

        _SmtpClient.Credentials = _NetworkCredential;
        _SmtpClient.Port = portNumber;
        //Let's send it
        try
        {
            _SmtpClient.Send(mailMessage);
            mailMessage.Dispose();
            _SmtpClient = null;
        }
        catch (Exception ex)
        {
            throw ex;
        }

    }

個人的なメールではすべてが正常に機能します。

問題はこれです:

TO メール (これを送信するメール) の 1 つがグループ メールである場合、そのメールは送信されません。

グループメールとは、複数の連絡先が添付されたメールを意味し、誰かがそのメールに送信すると、全員がメッセージを受信します。

グループメールの例

誰かが MyFamily@somedomain.com にメールを送ると、家族全員がメールを受け取ります。

個人的なメールだけでなく、あらゆる種類のメールで機能させるにはどうすればよいですか。

助けてくれてありがとう

4

1 に答える 1

0

個人の Google Apps ドメインでも同じ問題が発生しました。しかし、問題はグループ電子メールの構成にあり、c# コードにはありませんでした。

グループメールの権限を確認しましたか? 多くの場合、誰がこのグループ電子メールに電子メールを送信できるかを定義できます。そのため、正しいメール アドレスを使用するか、アクセス許可を再構成する必要があります。通常、グループのすべてのメンバーがグループにメールを送信できます。

于 2012-04-30T11:15:12.120 に答える