Solved

send mail from app.net

Posted on 2016-10-21
8
39 Views
Last Modified: 2016-10-21
i have web App
i need send email after SAVE in the database

I'm using a code that uses my email and password, is there any way to use a smtp unauthenticated

this code in web.config
    <add key="MailUser" value="elopezh@smi.com.pe" />
    <add key="MailUserPass" value="inicio01" />
    <add key="MailServer" value="smtp.office365.com" />
    <add key="MailServerPort" value="587" />
    <add key="MailServerSSL" value="1" />


--- this is the class
public static bool EnviarCorreo(MailModel correo)
        {
            try
            {
                Log.WriteLogInfo("Inicio Enviar correo");
 
                //tomar los datos de conexion del webconfig
                string flgenviarcorreo = System.Configuration.ConfigurationManager.AppSettings["FlgEnviarCorreo"];
 
                string mailuser = System.Configuration.ConfigurationManager.AppSettings["MailUser"];
                string mailuserpass = System.Configuration.ConfigurationManager.AppSettings["MailUserPass"];
                string mailserver = System.Configuration.ConfigurationManager.AppSettings["MailServer"];
                string mailserverport = System.Configuration.ConfigurationManager.AppSettings["MailServerPort"];
                string mailserverssl = System.Configuration.ConfigurationManager.AppSettings["MailServerSSL"];
 
                MailMessage mail = new MailMessage();
                mail.IsBodyHtml = true;
                mail.From = new MailAddress(mailuser);
 
                mail.Subject = correo.Asunto;
                mail.Body = correo.MensajeHtml;
                mail.Priority = MailPriority.High;
 
 
                string palinBody = correo.MensajeTexto;
                AlternateView plainView = AlternateView.CreateAlternateViewFromString(palinBody, null, "text/plain");
 
                // then we create the Html part to embed images,
                // we need to use the prefix 'cid' in the img src value
                string htmlBody = correo.MensajeHtml;
                AlternateView htmlView = AlternateView.CreateAlternateViewFromString(
                    htmlBody, null, "text/html");
 
                // add the views
                mail.AlternateViews.Add(plainView);
                mail.AlternateViews.Add(htmlView);
 
                SmtpClient clienteenvio = new SmtpClient();
                clienteenvio.UseDefaultCredentials = false;
                clienteenvio.DeliveryMethod = SmtpDeliveryMethod.Network;
 
                clienteenvio.Credentials = new NetworkCredential(mailuser, mailuserpass);
                clienteenvio.Host = mailserver;
                clienteenvio.Port = Convert.ToInt32(mailserverport);
                clienteenvio.EnableSsl = false;
                if (mailserverssl == "1")
                {
                    clienteenvio.EnableSsl = true;
                }
 
                try
                {
                    clienteenvio.Send(mail);
                    Log.WriteLogInfo("Se envio el mensaje de correo " + mail.To[0].Address);
                    return true;
                }
                catch (Exception ex)
                {
                    Log.WriteLogError(ex.Message);
                    return false;
                }
            }
            catch (Exception ex)
            {
                Log.WriteLogError(ex.Message);
                throw ex;
            }
        }


in App web
            if (DAL_Solicitud.Guardar(ref solicitud))
            {

                MailModel resul = new MailModel();
                resul.Para.Add("elopezh@smi.com.pe");
                if (model.emp_inv_des == "10359") resul.CC.Add("pchanca@smi.com.pe");
                resul.MensajeTexto = "Prueba de envio de correo: MensajeTexto";
                resul.MensajeHtml = "<table>" +
                "<tr><td style='font-weight:bold'>Proyecto:" + "</td><td>" + solicitud.proyecto + "</td>" + "</tr>" +
                "<tr><td style='font-weight:bold'>Solicita:" + "</td><td>" + solicitud.emp_comercial + "</td>" + "</tr>" +
                "<tr><td style='font-weight:bold'>Empresa:" + "</td><td>" + solicitud.empresa + "</td>" + "</tr>" +
                "</table>";
                resul.Asunto = "Solicitud de Proyecto";
                VTRUtil.EnviarCorreo(resul);

                return Json(new { coderror = solicitud.coderror, msgerror = solicitud.msgerror });
            }
0
Comment
Question by:enrique_aeo
  • 5
  • 3
8 Comments
 
LVL 35

Assisted Solution

by:YZlat
YZlat earned 500 total points
ID: 41853855
If the UseDefaultCredentials property is set to false and the Credentials property has not been set, then mail is sent to the server anonymously. You have UseDefaultCredentials set to false, so just do not specify any credentials and try sending it that way...
0
 

Author Comment

by:enrique_aeo
ID: 41853905
already you have that code

SmtpClient clienteenvio = new SmtpClient();
clienteenvio.UseDefaultCredentials = false;
clienteenvio.DeliveryMethod = SmtpDeliveryMethod.Network;
0
 
LVL 35

Accepted Solution

by:
YZlat earned 500 total points
ID: 41853907
did you comment out the line below?

clienteenvio.Credentials = new NetworkCredential(mailuser, mailuserpass);
0
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 

Author Comment

by:enrique_aeo
ID: 41854481
it is comment, but not send mail
0
 
LVL 35

Expert Comment

by:YZlat
ID: 41854489
do you get any error?
0
 

Author Comment

by:enrique_aeo
ID: 41854500
THIS IS THE ERROR
Message      "Server does not support secure connections."      string
Source      "System"      string
StackTrace      "   at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint)\r\n   at System.Net.Mail.SmtpTransport.GetConnection(ServicePoint servicePoint)\r\n   at System.Net.Mail.SmtpClient.GetConnection()\r\n   at System.Net.Mail.SmtpClient.Send(MailMessage message)\r\n   at srvvtr.VTRUtil.EnviarCorreo(MailModel correo) in

WEB.CONFIG
<!--Configuracion de Correo-->
    <add key="FlgEnviarCorreo" value="1" />
    <add key="MailUser" value="sistemas@smi.com.pe" />
    <add key="MailUserPass" value="Pa$$w0rd02" />
    <add key="MailServer" value="smtp.smi.com.pe" />
    <add key="MailServerPort" value="25" />
    <add key="MailServerSSL" value="1" />
0
 

Author Comment

by:enrique_aeo
ID: 41854540
this is the problema
 <add key="MailServerSSL" value="1" />

i change  <add key="MailServerSSL" value="0" />
0
 

Author Closing Comment

by:enrique_aeo
ID: 41854543
<add key="MailServerPort" value="25" />
    <add key="MailServerSSL" value="0" />
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question