Uma forma simples de enviar email com template HTML em ASP.NET
Código:
using System.Net;
using System.Net.Mail;
WebClient wc = new WebClient();
wc.Encoding = System.Text.Encoding.UTF8;
//Obtendo o conteúdo do template
string sTemplate = wc.DownloadString(
"http://www.cbsa.com.br/exemplos/template.html");
//Mensagem para inserir no template
string sMensagem = "Uma forma simples de enviar email com template HTML.";
//fazendo o replace de ##Mensagem## por sMensagemno conteúdo obtido
sTemplate = sTemplate.Replace("##Mensagem##", sMensagem);
//Configurações do SMTP
string sUserName = "[email protected]"; //Login
string sPassword = "senha"; //Senha
MailMessage objEmail = new MailMessage();
objEmail.To.Add("[email protected]");
objEmail.From = new MailAddress("[email protected]");
objEmail.Subject = "Título da mensagem";
objEmail.Body = sTemplate; //Iserindo o template
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com"; //Servidor
smtp.Credentials = new System.Net.NetworkCredential(sUserName, sPassword);
smtp.EnableSsl = true;
smtp.Send(objEmail);
Um template HTML bem básico de exemplo abaixo
<html>
<head>
<title>Template</title>
</head>
<body>
<table>
<tr>
<td>
<img src="http://cbsa.com.br/images/top_logo.png" alt="" />
</td>
</tr>
<tr>
<td>
##Mensagem##
</td>
</tr>
<tr>
<td>
Cesar Cassiano Schimanco
<a href="http://www.cbsa.com.br">www.cbsa.com.br</a>
</td>
</tr>
</table>
</body>
</html>