För att skicka e-post med ASP.NET kan du använda biblioteket System.Net.Mail. Här hittar du exempel på kod som kan användas för detta.
Skicka text-meddelande
Om du vill skicka e-postmeddelanden, formaterade som vanlig text, genom ASP.NET behöver du använda biblioteket System.Net.Mail. Här kommer du åt några enkla funktioner i klasserna MailMessage och SMTPClient.
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Import Namespace="System.Net.Mail" %>
<%
MailMessage mail = new MailMessage();
mail.From = new MailAddress("info@mindoman.se");
mail.To.Add("min.epost@mindoman.se");
mail.Subject = "Testmeddelande";
mail.Body = "Detta är innehållet i meddelandet.";
SmtpClient smtp = new SmtpClient("smtp.websupport.se");
smtp.Port = 587;
try
{
smtp.Send(mail);
}
catch (Exception ex)
{
Response.Write("Caught exception: " + ex.ToString());
}
%>
Skicka HTML-meddelande
Det är enkelt att skicka meddelandet som HTML istället. Allt du behöver göra är att sätta mail.IsBodyHtml till true och sedan använda HTML i mail.Body.
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Import Namespace="System.Net.Mail" %>
<%
MailMessage mail = new MailMessage();
mail.From = new MailAddress("info@mindoman.se");
mail.To.Add("min.epost@mindoman.se");
mail.Subject = "Testmeddelande";
mail.Body = "<em style=\"color: #f11;\">Detta är innehållet i meddelandet.</em>";
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient("smtp.websupport.se");
smtp.Port = 587;
try
{
smtp.Send(mail);
}
catch (Exception ex)
{
Response.Write("Caught exception: " + ex.ToString());
}
%>
Skicka e-post med autentiserad användare
När man skickar e-post rekommenderas det att man autentiserar sig mot SMTP-servern för att undvika att meddelandet klassificeras som spam. För att göra detta krävs att man inkluderar biblioteket System.Net som innehåller klassen NetworkCredential.
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.Net.Mail" %>
<%
MailMessage mail = new MailMessage();
mail.From = new MailAddress("info@mindoman.se");
mail.To.Add("min.epost@mindoman.se");
mail.Subject = "Testmeddelande";
mail.Body = "<em style=\"color: #f11;\">Detta är innehållet i meddelandet.</em>";
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient("smtp.websupport.se");
smtp.Port = 465;
smtp.Credentials = new NetworkCredential("info@mindoman.se", "lösenord");
try
{
smtp.Send(mail);
}
catch (Exception ex)
{
Response.Write("Caught exception: " + ex.ToString());
}
%>
Skicka e-post med autentiserad användare + SSL
För att aktivera SSL använder man komponenten smtp.EnableSsl som sätts till true.
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.Net.Mail" %>
<%
MailMessage mail = new MailMessage();
mail.From = new MailAddress("info@mindoman.se");
mail.To.Add("min.epost@mindoman.se");
mail.Subject = "Testmeddelande";
mail.Body = "<em style=\"color: #f11;\">Detta är innehållet i meddelandet.</em>";
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient("smtp.websupport.se");
smtp.Port = 465;
smtp.Credentials = new NetworkCredential("info@mindoman.se", "lösenord");
smtp.EnableSsl = true;
try
{
smtp.Send(mail);
}
catch (Exception ex)
{
Response.Write("Caught exception: " + ex.ToString());
}
%>