Bigprey Ответов: 2

BCC mail не идет - все остальные в коде вроде subject & to addresses работают нормально


В одном из моих asp.net pages (C#), я использую опцию SMTP mail. Все работает нормально в Почте, такой как тема, адреса и т. д., За исключением BCC на адрес gmail по умолчанию (я использую это, чтобы проверить, как почта попадает в другие почтовые ящики).

protected void SendEmail(string MemberName, string EmailId)
        {
            string TextMessage = TBMessage.Text;
            string ClubName = TBClubName.Text;
            string HtmlTemplate = Server.MapPath("EmailTemplates/PromoteMembers.html");
            string content;
            string senderID = "promote@example.com";
            const string senderPassword = "p@ssw0rd";             
            using (var strReader = new StreamReader(HtmlTemplate))
            {
                content = strReader.ReadToEnd();
            }
            using (StringWriter sw = new StringWriter())
            {
                using (HtmlTextWriter hw = new HtmlTextWriter(sw))
                {                                        
                    content = content.Replace("<%Name%>", MemberName);
                    content = content.Replace("<%Message%>", TextMessage);                    
                }
            }
            string HtmlBody = content;
            AlternateView alternateView = AlternateView.CreateAlternateViewFromString(HtmlBody, null, "text/html");                       
            MailMessage m = new MailMessage();
            m.AlternateViews.Add(alternateView);
            m.From = new MailAddress(senderID, "example.com");
            m.To.Add(new MailAddress(EmailId, MemberName));
            m.Subject = "Message from " + ClubName;
            MailAddress bcc = new MailAddress("example@gmail.com");
            m.Bcc.Add(bcc);
            SmtpClient smtp = new SmtpClient
            {
                Host = "mail.example.com",
                 Port = 8889,
                EnableSsl = false,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                Credentials = new System.Net.NetworkCredential(senderID, senderPassword),
                Timeout = 3000000,
            };            
            smtp.Send(m);
        }



Пожалуйста, дайте мне знать, какую ошибку я здесь совершаю. Заранее спасибо

Что я уже пробовал:

MailAddress bcc = new MailAddress(&quot;example@gmail.com&quot;);
            m.Bcc.Add(bcc);

Animesh Datta

откуда вы знаете, что Почта BCC не идет ? существует ли ваш bcc emailid ?

Bigprey

Я не получаю писем BCC. Это один из моих собственных идентификаторов электронной почты, и он действительно существует.

F-ES Sitecore

Поговорите с тем, кто владеет smtp-сервером, возможно, он отключил bcc. Возможно, также стоит проверить, что учетная запись gmail может получать письма bcc, и они не находятся в вашей папке спама.

Bigprey

@F-ES Sitecore вы правы... Только BCC Gmail не допускаются. Я подумал, что поскольку адреса "кому", включая некоторые идентификаторы gmail, идут нормально, то он также должен принимать BCC. Во всяком случае, я думал только о том, чтобы узнать, как почта отображается в gmail. Итак, я не могу найти его с помощью метода BCC.

Спасибо, приятель, за помощь.

2 Ответов

Рейтинг:
7

Bigprey

Я нашел проблему.

Только Gmail не принимает BCC. Я подумал, что поскольку адреса "кому" имеют некоторые из них, включая идентификаторы gmail и получение писем, то он также должен принимать BCC.

Во всяком случае, я думал только о том, чтобы узнать, как почта появляется в чужом почтовом ящике gmail. Итак, я не могу найти его с помощью метода BCC.


Midi_Mick

Как они смеют! Я бы не выбрала такой вариант. Я думаю, чтобы увидеть его, вам нужно будет сделать копию сообщения и отправить его в Gmail в качестве единственного получателя. Однако, повторяю, как они смеют!

Bigprey

Поскольку они сильно ограничивают, например, то, как изображения отображаются в электронных письмах строго, я тоже подумал о том, чтобы получить копию каждого письма через BCC в свой собственный Gmail. Но это, кажется, запрещено. В любом случае, спасибо

Рейтинг:
1

Midi_Mick

Ваш код выглядит хорошо, поэтому я бы предположил, что ошибка находится либо в объекте MailMessage, либо на вашем почтовом сервере. Вы могли бы отследить, какой из них:

1. Подключиться к серверу электронной почты через существующий e-mail клиент (Thunderbird или аналогичных). Отправьте сообщение с помощью BCC и посмотрите, действительно ли сервер отправляет его.

2. сохраните электронную почту в файл. Здесь есть разумная статья (При добавлении "сохранить" () функциональные возможности системы.Нет.Почте.Получить помощь[^]), чтобы показать, как это сделать. Убедитесь, что заголовки BCC находятся там.