I have an ASP.NET Core 3.1 Web API project. I am using Entity Framework.
When I pass data statically to a smtp client, mail is sent and there is no problem:
SmtpClient smtp = new SmtpClient();
smtp.UseDefaultCredentials = false;
smtp.Credentials = new System.Net.NetworkCredential("development@mail.com.tr", "password");
smtp.Port = 587;
smtp.Host = "mail.com.tr";
smtp.EnableSsl = false;
MailMessage mail = new MailMessage();
mail.To.Add("atakan@mail.com.tr");
mail.From = new MailAddress("development@mail.com.tr");
mail.Subject = PostaSubject;
mail.IsBodyHtml = true;
mail.Body = MailTemplate(subject, subject);
smtp.Send(mail);
But when I get the smtp client data from the data in the context, sometimes the mail is sent, sometimes it cannot be thrown and it works unstable. How can I fix it?
SmtpClient smtp = new SmtpClient();
smtp.UseDefaultCredentials = false;
smtp.Credentials = new System.Net.NetworkCredential(_context.MailConfigs.Select(x => x.UserName).FirstOrDefault(), _context.MailConfigs.Select(x => x.UserPassword).FirstOrDefault());
smtp.Port = (int)_context.MailConfigs.Select(x => x.SmtpPort).FirstOrDefault();
smtp.Host = _context.MailConfigs.Select(x => x.SmtpHost).FirstOrDefault();
smtp.EnableSsl = false;
MailMessage mail = new MailMessage();
mail.To.Add(_context.MailConfigs.Select(x => x.Reciever).FirstOrDefault());
mail.From = new MailAddress(_context.MailConfigs.Select(x => x.UserName).FirstOrDefault());
mail.Subject = PostaSubject;
mail.IsBodyHtml = true;
mail.Body = MailTemplate(subject, subject);
smtp.Send(mail);