Ciao RiminiRimini
Eccomi qui, non ti ho risposto prima perchè pensavo proprio
che tu avessi già risolto.
Il primo suggerimento che ti ho dato funziona correttamente
ad ogni modo ti scrivo i passaggi step-by-step con il codice
sia in C# che in VB così non ti sbagli sicuro:
Web.config sia C# che VB -------------------------------------------------------------
codice:
<configuration>
<system.net>
<mailSettings>
<smtp from="qui-ci-va-un-indirizzo-di-posta">
<network host="qui-ci-va-smtp-del-tuo-provider-esempio-mail.libero.it" password="xxxxxxxxxx" userName="xxxxxxxxxx"/>
</smtp>
</mailSettings>
</system.net>
<system.web>
<compilation debug="true"/>
</system.web>
</configuration>
C# -----------------------------------------------------
Nella pagina MailHTML.aspx:
Ho inserito semplicemente un controllo Literal che ho chiamato:
msgConfermaLiteral ed un pulsante che ho chiamato: Button1 (che fantasia !)
Nella pagina MailHTML.aspx.cs:
Come prima cosa la direttiva:
using System.Net.Mail;
per importare il namespace corretto;
all'evento Page_Load ho fatto in modo che il controllo Literal fosse invisibile
codice:
protected void Page_Load(object sender, EventArgs e)
{
msgConfermaLiteral.Visible = false;
}
all'evento Button1_Click ho associato il seguente codice:
codice:
protected void Button1_Click(object sender, EventArgs e)
{
try
{
// Creo l'oggetto message della classe Mail Message
MailMessage message = new MailMessage();
// Creo il messaggio in HTML formattando il titolo con un tag h1,
// inserendo un link a GOOGLE ed un indirizzo mail (mailto)
message.Body = "<h1>Testo della mail in HTML</h1>
Visita questo sitoGOOGLE
Spediscimi una mail ";
// Imposto la proprietà IsBodyHtml a true
message.IsBodyHtml = true;
// Invio
message.To.Add(new MailAddress("indirizzo a cui spedire la mail", "nome"));
SmtpClient server = new SmtpClient();
server.Send(message);
msgConfermaLiteral.Visible = true;
msgConfermaLiteral.Text = "Messaggio spedito correttamente";
}
catch (Exception ex)
{
msgConfermaLiteral.Visible = true;
msgConfermaLiteral.Text = "Problema invio messaggio";
}
}
FINE C#
VB -----------------------------------------------------
Nella pagina MailHTML.aspx:
Ho inserito semplicemente un controllo Literal che ho chiamato:
msgConfermaLiteral ed un pulsante che ho chiamato: Button1 (che fantasia !)
Nella pagina MailHTML.aspx.vb:
Come prima cosa la direttiva:
Imports System.Net.Mail;
per importare il namespace corretto;
all'evento Page_Load ho fatto in modo che il controllo Literal fosse invisibile
codice:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
msgConfermaLiteral.Visible = False
End Sub
all'evento Button1_Click ho associato il seguente codice:
codice:
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
' Creo l'oggetto message della classe Mail Message
Dim message As New MailMessage()
' Creo il messaggio in HTML formattando il titolo con un tag h1,
' inserendo un link a GOOGLE ed un indirizzo mail (mailto)
message.Body = "<h1>Teto della mail in HTML</h1>
Visita questo sitoGOOGLE
Spediscimi una mail"
' Imposto la proprietà IsBodyHtml a true
message.IsBodyHtml = True
' Imposto il destinatario
message.To.Add(New MailAddress("Indirizzo a cui spedire la mail", "Nome"))
' Invio la mail
Dim smtp As New SmtpClient
smtp.Send(message)
' Confermo l'invio del messaggio
msgConfermaLiteral.Visible = True
msgConfermaLiteral.Text = "Messaggio spedito correttamente"
Catch ex As Exception
' Visualizzo un messaggio d'errore
msgConfermaLiteral.Visible = True
msgConfermaLiteral.Text = "Problema invio messaggio"
End Try
End Sub
FINE VB
Come puoi vedere dallo screenshot, il mio programma di posta elettronica
formatta tutto come da codice ovvero: titolo in h1 ed i link . . .
come link
Fammi sapere . . . . .
RobyUA