Succede spesso di dover spedire della mail da componenti SharePoint come web part, custom page o altro.. Il modello ad oggetti ci offre il metodo SendMail della classe SPUtility, con ben quattro overload diversi.
Il problema è che a volte quel metodo non basta per i nostri scopi, perchè magari abbiamo la necessità di inserire degli indirizzi e-mail nei campi CC e BCC, inserire allegati o comunque effettuate una di quelle attività che normalmente ci vengono offerte dalla classe MailMessage.

Sempre tramite modello ad oggetti però, è possibile recuperare l'indirizzo del server SMTP configurato dalla Central Administration di SharePoint ed utilizzarlo per spedire i nostri messaggi e-mail.
Vediamo come:

MailMessage message = new MailMessage();

message.From = new MailAddress("info@peppedotnet.it");
message.To.Add("info@peppedotnet.it");
message.CC.Add("info@peppedotnet.it");
message.Bcc.Add("info@peppedotnet.it");
message.Subject = "Prova invio da SharePoint";
message.Body = "Corpo del messaggio ....";
message.IsBodyHtml = true;

SPWeb web = SPContext.Current.Web;
string smtpUrl = web.Site.WebApplication.OutboundMailServiceInstance.Server.Address;

SmtpClient smtp = new SmtpClient(smtpUrl);
smtp.Send(message);

Dovete solamente fare attenzione ad utilizzare questo codice dopo che il servizio di Outcoming Mail è stato correttamente configurato dalla Central Administration della vostra farm SharePoint, altrimenti il codice utile a recuperare l'indirizzo del server SMTP tornerà un'eccezione di tipo NullReferenceException.


TAGS: [SharePoint] [SMTP] [Central Administration]
Commenti(0) - Posted @ 1/23/2010 1:45:09 PM - Categoria: Sharepoint - Permalink - Share on twitter | facebook


COMMENTI
Non sono stati aggiungi commenti ...

INSERISCI UN COMMENTO

Nome *
Indirizzo e-mail
(non verrà pubblicato)
Commento *