mailkit sendMail doubts

本文关键字:doubts sendMail mailkit | 更新日期: 2023-09-27 18:12:10

我有一个服务器在云(asp.net),我安装mailkit提供我的客户从我的应用程序发送电子邮件与他们自己的电子邮件帐户。

我的一个问题是他可以发送3封邮件,然后下一封邮件被服务器拒绝:

"消息:连接尝试失败,因为被连接的一方失败了一段时间后没有适当回应,或建立联系失败,因为连接的主机未能响应213.190.193.29:25"

另一个问题是,他们给他发邮件,他收到一个"垃圾邮件"。

你能帮我吗?

mailkit sendMail doubts

    {
        emailID = "";
        // Nova Mensagem 
        var message = new MimeMessage();
        try
        {
            // Acede aos parâmetros do email caso este seja do gestobrigweb gmail.com
            if (emailSettings.email == "gestobrigweb@gmail.com") {
                EmailProvider provider = new EmailProviders().GetEmailProvider(Convert.ToInt32(ConfigurationManager.AppSettings["gestObrigWebProviderID"]));
                if (emailSettings.provider == null)
                    emailSettings.provider = provider;
            }
            // UserName
            string userName = emailSettings.email;   
            // Password
            if (userPass == "")
                userPass = cripter.Decrypt(emailSettings.pass);
            // From
            message.From.Add(new MailboxAddress(emailSettings.email, emailSettings.email));
            // TO
            if (recipient.Contains(";"))
                foreach (string recipt in recipient.Split(';'))
                    message.To.Add(new MailboxAddress(recipt, recipt));
            else
                if (recipient.Contains(","))
                    foreach (string recipt in recipient.Split(','))
                        message.To.Add(new MailboxAddress(recipt, recipt));
                else
                  message.To.Add(new MailboxAddress(recipient, recipient));

            // Se Assume CC
            if (assumeCC)
                message.Cc.Add(new MailboxAddress(emailSettings.email,emailSettings.email));
            // Destinatário
            if (cc != "")
            {
                if (cc.Contains(";"))
                    foreach (string emailCC in cc.Split(';'))
                    message.Cc.Add(new MailboxAddress(emailCC,emailCC));
                else
                    message.Cc.Add(new MailboxAddress(cc, cc));
            }
            // Assunto
            message.Subject = subject;
            // Body (Mensagem)
            var bodyBuilder = new BodyBuilder();
            bodyBuilder.HtmlBody = body;
            message.Body = bodyBuilder.ToMessageBody();
            // Envio
            using (var client = new SmtpClient())
            {
                // For demo-purposes, accept all SSL certificates (in case the server supports STARTTLS)
                client.ServerCertificateValidationCallback = (s, c, h, e) => true;
                client.Connect(emailSettings.emailServer, emailSettings.serviceType, false);
                // Note: since we don't have an OAuth2 token, disable
                // the XOAUTH2 authentication mechanism.
                client.AuthenticationMechanisms.Remove("XOAUTH2");
                // Note: only needed if the SMTP server requires authentication
                client.Authenticate(userName, userPass);
                client.Send(message);
                client.Disconnect(true);
                return true;
            }
        }