System.net.mail - Attachments

giovedì 08 febbraio 2007 - 18.05

alengy Profilo | Newbie

Ciao a tutti i partecipanti!

Ho un problema, forse banale, ma che cmq non riesco a risolvere in tempi rapidi..

Sto testando il namespace per l'invio delle mail via web.

Allego il codice da me scritto:
public void ButtonSendMail_Click(object sender, EventArgs e)
{
try
{
MailMessage zMail = new MailMessage();

string MailFrom = TxtFrom.Text;
string MailTo = txtTo.Text;
string MailSubject = txtSubject.Text;
string Mailbody = TextBoxCorpo.Text;

SmtpClient zEmailClient = new SmtpClient("localhost");

if (fileList.Text.Trim().Length != 0)
{
string sAttach = fileList.Text;
zMail.Attachments.Add(new Attachment(sAttach));
}

zEmailClient.Send(MailFrom, MailTo, MailSubject, Mailbody);

Response.Redirect("MailSuccess.aspx");
}
catch (Exception ex)
{
LabelErrore.Text = ex.Message;
}

Il problema è che gli allegati dei messaggi non vengono inclusi nel messaggio inviato.
Me ne accorgo aprendo il file eml nella directory SMTP su C:\Inetpub\wwwroot\mailroot\Queue

Cosa posso aver sbagliato? Può essere il servizio smtp mal configurato? Eppure ho ricontrollato attentamente tutti i parametri di configurazione.

Grazie a tutti![/code]

lordwaizard Profilo | Senior Member

Io utilizzo questo e funziona benissimo
Imports System.Net.Mail
Imports System.Net.NetworkCredential
Imports System.IO

Try
Dim leggi As TextReader = File.OpenText("c:\io.html")
Dim testo As String = leggi.ReadToEnd()
leggi.Close()

Dim strAddress As String = "prova@xxx.com"
Dim sm As New System.Net.Mail.SmtpClient("smtp", "25")
Dim ciao As New Net.NetworkCredential
ciao.UserName = "prova@xxx.com"
ciao.Password = "123456"
With sm
.EnableSsl = False
.Credentials = ciao
End With
Dim _from As MailAddress = New MailAddress(strAddress)
Dim _to As MailAddress = New MailAddress("xxx@xxx.com")
Dim _allegato As New Attachment("c:\io1.html")

Dim mMsg As New MailMessage(_from, _to)
mMsg.Attachments.Add(_allegato)
mMsg.Subject = "Prova 123"
mMsg.Body = testo
mMsg.IsBodyHtml = True
sm.Send(mMsg)
Catch ex As Exception
MsgBox(ex.Message)
End Try
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5