Mandare posta elettronica con ASP.net

domenica 23 marzo 2008 - 21.14

86Marco Profilo | Expert

Salve con l'ausilio di un libro sto cercando di configurare un form per l'invio di posta elettronica.
Ho fatto un piccolo esempio scrivendo questo in una pagina ASPX

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Mail" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim messaggio As New MailMessage
messaggio.To = "indirizzo@posta.it"
messaggio.From = "indirizzoMittente@posta.it"
messaggio.Subject = "Soggetto del messaggio"
messaggio.Priority = MailPriority.High
messaggio.Body = "Corpo del messaggio"

SmtpMail.Send(messaggio)
End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Pagina senza titolo</title>
</head>
<body>
<form id="form1" runat="server">
<div>

</div>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</form>
</body>
</html>



Dovrebbe funzionare tutto a meraviglia ma appena faccio clic su Button ricevo questo messaggio:

Errore server nell'applicazione '/Sito'.
--------------------------------------------------------------------------------

Il valore di configurazione "SendUsing" non è valido.

Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere l'analisi dello stack.

Dettagli eccezione: System.Runtime.InteropServices.COMException: Il valore di configurazione "SendUsing" non è valido.


Errore nel codice sorgente:


Riga 13: messaggio.Body = "Corpo del messaggio"
Riga 14:
Riga 15: SmtpMail.Send(messaggio)
Riga 16: End Sub
Riga 17: </script>


File di origine: C:\inetpub\wwwroot\Sito\SMTP.aspx Riga: 15

Analisi dello stack:


[COMException (0x80040220): Il valore di configurazione "SendUsing" non è valido.
]

[TargetInvocationException: Eccezione generata dalla destinazione di una chiamata.]
System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters) +0
System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams) +436
System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) +72

[HttpException (0x80004005): Il valore di configurazione "SendUsing" non è valido.
]
System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) +119
System.Web.Mail.CdoSysHelper.Send(MailMessage message) +1955
System.Web.Mail.SmtpMail.Send(MailMessage message) +131
ASP.smtp_aspx.Button1_Click(Object sender, EventArgs e) in C:\inetpub\wwwroot\Sito\SMTP.aspx:15
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +105
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +107
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1746

In più mi sottolinea in verde Smtp.Mail(messaggio) e se vado a posizionarmi sopra mi compare una scritta dicendomi: "System.Web.Mail.SmtpMail è obsoleto. The raccomandate alternative is System.Net.Mail.SmtpClient"

Spero che qualcuno mi possa aiutare.
Grazie mille e Auguri

berto82 Profilo | Newbie

Ecco per te la funzione corretta con tutti i parametri per l'invio della posta

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

86Marco Profilo | Expert

Ciao,
considera che conosco poco asp.net... ho gia difficoltà nel mio figuriamoci nel tuo
Sapresti aiutarmi dandomi aiuto sul mio codice?
Grazie.
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5