Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Classe MailMessage

 

Data di pubblicazione: ottobre 2016

Rappresenta un messaggio di posta elettronica che può essere inviato tramite la SmtpClient classe.

Spazio dei nomi:   System.Net.Mail
Assembly:  System (in System.dll)

System.Object
  System.Net.Mail.MailMessage

public class MailMessage : IDisposable

NomeDescrizione
System_CAPS_pubmethodMailMessage()

Inizializza un'istanza vuota della classe MailMessage.

System_CAPS_pubmethodMailMessage(MailAddress, MailAddress)

Inizializza una nuova istanza di MailMessage classe utilizzando l'oggetto specificato MailAddress oggetti di classe.

System_CAPS_pubmethodMailMessage(String, String)

Inizializza una nuova istanza di MailMessage classe utilizzando l'oggetto specificato String oggetti di classe.

System_CAPS_pubmethodMailMessage(String, String, String, String)

Inizializza una nuova istanza della classe MailMessage.

NomeDescrizione
System_CAPS_pubpropertyAlternateViews

Ottiene la raccolta di allegati utilizzata per memorizzare i formati alternativi del corpo del messaggio.

System_CAPS_pubpropertyAttachments

Ottiene la raccolta di allegati usati per archiviare i dati allegati al messaggio di posta elettronica.

System_CAPS_pubpropertyBcc

Ottiene la raccolta di indirizzi contenente i destinatari della copia per conoscenza nascosta (Ccn) per questo messaggio di posta elettronica.

System_CAPS_pubpropertyBody

Ottiene o imposta il corpo del messaggio.

System_CAPS_pubpropertyBodyEncoding

Ottiene o imposta la codifica utilizzata per codificare il corpo del messaggio.

System_CAPS_pubpropertyBodyTransferEncoding

Ottiene o imposta la codifica di trasferimento usato per codificare il corpo del messaggio.

System_CAPS_pubpropertyCC

Ottiene la raccolta di indirizzi contenente i destinatari della copia per conoscenza (CC) per questo messaggio di posta elettronica.

System_CAPS_pubpropertyDeliveryNotificationOptions

Ottiene o imposta le notifiche di recapito per questo messaggio di posta elettronica.

System_CAPS_pubpropertyFrom

Ottiene o imposta l'indirizzo del mittente per questo messaggio di posta elettronica.

System_CAPS_pubpropertyHeaders

Ottiene le intestazioni di messaggio di posta elettronica che vengono trasmessi con il messaggio di posta elettronica.

System_CAPS_pubpropertyHeadersEncoding

Ottiene o imposta la codifica utilizzata per le intestazioni personalizzate definite dall'utente per questo messaggio di posta elettronica.

System_CAPS_pubpropertyIsBodyHtml

Ottiene o imposta un valore che indica se il corpo del messaggio di posta elettronica in formato Html.

System_CAPS_pubpropertyPriority

Ottiene o imposta la priorità del messaggio di posta elettronica.

System_CAPS_pubpropertyReplyTo

Obsoleto. Ottiene o imposta l'indirizzo ReplyTo per il messaggio di posta elettronica.

System_CAPS_pubpropertyReplyToList

Ottiene o imposta l'elenco di indirizzi a cui rispondere al messaggio di posta.

System_CAPS_pubpropertySender

Ottiene o imposta l'indirizzo del mittente per questo messaggio di posta elettronica.

System_CAPS_pubpropertySubject

Ottiene o imposta la riga dell'oggetto per il messaggio di posta elettronica.

System_CAPS_pubpropertySubjectEncoding

Ottiene o imposta la codifica utilizzata per il contenuto dell'oggetto per il messaggio di posta elettronica.

System_CAPS_pubpropertyTo

Ottiene la raccolta di indirizzi contenente i destinatari del messaggio di posta elettronica.

NomeDescrizione
System_CAPS_pubmethodDispose()

Rilascia tutte le risorse usate da MailMessage.

System_CAPS_protmethodDispose(Boolean)

Rilascia le risorse non gestite usate da MailMessage e, facoltativamente, le risorse gestite.

System_CAPS_pubmethodEquals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object.)

System_CAPS_protmethodFinalize()

Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object.)

System_CAPS_pubmethodGetHashCode()

Funge da funzione hash predefinita.(Ereditato da Object.)

System_CAPS_pubmethodGetType()

Ottiene l'oggetto Type dell'istanza corrente.(Ereditato da Object.)

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.(Ereditato da Object.)

System_CAPS_pubmethodToString()

Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object.)

Le istanze della MailMessage classe vengono utilizzate per costruire messaggi di posta elettronica vengono trasmessi a un server SMTP per il recapito mediante la SmtpClient classe.

Il mittente, destinatario, oggetto e corpo del messaggio di posta elettronica possono essere specificati come parametri quando un MailMessage viene utilizzato per inizializzare un MailMessage oggetto. Questi parametri può anche essere impostati o si accede utilizzando le proprietà di MailMessage oggetto.

Le intestazioni dei messaggi di posta elettronica primario e gli elementi per il messaggio possono essere impostati utilizzando le proprietà seguenti della MailMessage classe.

Intestazione di posta elettronica o in parte

Proprietà

Allegati

Attachments

Copie per conoscenza nascosta (Ccn)

Bcc

Copie per conoscenza (CC)

CC

Tipo di contenuto

BodyEncoding

Codifica per le intestazioni personalizzate

HeadersEncoding

Corpo del messaggio

Body

Priorità

Priority

Destinatario

To

Rispondi a

ReplyToList

Mittente

From

Oggetto

Subject

La MailMessage classe consente inoltre di un'applicazione accedere alla raccolta di intestazioni del messaggio tramite il Headers proprietà. Durante la raccolta è di sola lettura (una nuova raccolta non può essere impostata), le intestazioni personalizzate possono essere aggiunte o eliminate da questa raccolta. Tutte le intestazioni personalizzate aggiunti verranno inclusi quando il MailMessage istanza viene inviata. Prima di inviare un messaggio, solo le intestazioni aggiunte specificatamente a questo insieme di Headers proprietà sono inclusi nella raccolta. Dopo un il MailMessage istanza viene inviata, la Headers proprietà includerà anche le intestazioni che vengono impostate utilizzando le proprietà associate della MailMessage classe o i parametri passati quando un MailMessage viene utilizzato per inizializzare un MailMessage oggetto.

Se alcune intestazioni di messaggio in formato non valido, potrebbe causare il messaggio di posta elettronica venga danneggiato. Pertanto, qualsiasi intestazione di posta elettronica nell'insieme di intestazioni che può essere impostato utilizzando una proprietà sulla MailMessage classe deve essere impostata solo tramite il MailMessage proprietà della classe o come un parametro passato quando un MailMessage Inizializza un MailMessage oggetto. Nell'elenco seguente intestazioni dei messaggi non deve essere aggiunte utilizzando il Headers proprietà e i valori impostati per queste intestazioni mediante la Headers proprietà verrà eliminata o sovrascritta quando il messaggio viene inviato:

  • Ccn

  • Cc

  • Content-ID

  • Percorso contenuto

  • Content-Transfer-Encoding

  • Tipo di contenuto

  • date

  • Da

  • Importanza

  • Versione MIME

  • Priorità

  • Rispondi a

  • Mittente

  • A

  • X-priorità

Se l'applicazione non specifica un'intestazione X-Sender usando il Headers proprietà, la MailMessage classe ne creerà uno quando viene inviato il messaggio.

Utilizzare la AlternateViews proprietà per specificare le copie di un messaggio di posta elettronica in formati diversi. Ad esempio, se si invia un messaggio in formato HTML, si potrebbe anche desidera fornire una versione di testo normale nel caso in cui alcuni destinatari utilizzando i lettori di posta elettronica che non possono visualizzare il contenuto HTML. Per un esempio che illustra la creazione di un messaggio con visualizzazioni alternative, vedere AlternateViews.

Utilizzare la Attachments proprietà per aggiungere allegati a un messaggio di posta elettronica. Per un esempio che illustra la creazione di un messaggio con allegato, vedere Attachments.

Dopo l'assemblaggio di messaggio di posta elettronica, è possibile inviarlo tramite il Send o SendAsync metodi.

Esempio di codice riportato di seguito viene illustrato come creare e inviare un messaggio di posta elettronica che include un allegato.

public static void CreateMessageWithAttachment(string server)
{
	// Specify the file to be attached and sent.
	// This example assumes that a file named Data.xls exists in the
	// current working directory.
	string file = "data.xls";
	// Create a message and set up the recipients.
	MailMessage message = new MailMessage(
	   "jane@contoso.com",
	   "ben@contoso.com",
	   "Quarterly data report.",
	   "See the attached spreadsheet.");

	// Create  the file attachment for this e-mail message.
	Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
	// Add time stamp information for the file.
	ContentDisposition disposition = data.ContentDisposition;
	disposition.CreationDate = System.IO.File.GetCreationTime(file);
	disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
	disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
	// Add the file attachment to this e-mail message.
	message.Attachments.Add(data);

	//Send the message.
	SmtpClient client = new SmtpClient(server);
	// Add credentials if the SMTP server requires them.
	client.Credentials = CredentialCache.DefaultNetworkCredentials;

    try {
	  client.Send(message);
	}
	catch (Exception ex) {
	  Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}", 
                  ex.ToString() );			  
	}
	// Display the values in the ContentDisposition for the attachment.
	ContentDisposition cd = data.ContentDisposition;
	Console.WriteLine("Content disposition");
	Console.WriteLine(cd.ToString());
	Console.WriteLine("File {0}", cd.FileName);
	Console.WriteLine("Size {0}", cd.Size);
	Console.WriteLine("Creation {0}", cd.CreationDate);
	Console.WriteLine("Modification {0}", cd.ModificationDate);
	Console.WriteLine("Read {0}", cd.ReadDate);
	Console.WriteLine("Inline {0}", cd.Inline);
	Console.WriteLine("Parameters: {0}", cd.Parameters.Count);
	foreach (DictionaryEntry d in cd.Parameters)
	{
		Console.WriteLine("{0} = {1}", d.Key, d.Value);
	}
	data.Dispose();
}

.NET Framework
Disponibile da 2.0

I membri statici pubblici ( Condiviso in Visual Basic) di questo tipo è thread safe. Non tutti i membri di istanza sono garantiti come thread safe.

Torna all'inizio
Mostra: