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

Costruttore Attachment (Stream, String, String)

 

Data di pubblicazione: ottobre 2016

Inizializza una nuova istanza di Attachment classe con il flusso specificato, nome e informazioni sul tipo MIME.

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

public Attachment(
	Stream contentStream,
	string name,
	string mediaType
)

Parametri

contentStream
Type: System.IO.Stream

Leggibile Stream che include il contenuto di questo allegato.

name
Type: System.String

Oggetto String che contiene il valore per la Name proprietà del ContentType associata a questo allegato. Il valore può essere null.

mediaType
Type: System.String

Oggetto String che contiene le informazioni di intestazione Content-Type MIME per l'allegato. Il valore può essere null.

Exception Condition
ArgumentNullException

stream è null.

FormatException

mediaType non è nel formato corretto.

Se mediaType non null o uguale a String.Empty (""), viene utilizzato per costruire la ContentType classe associata a questo allegato.

Se mediaType e name contengono Name informazioni, il valore specificato in name viene utilizzato. La proprietà TransferEncoding è impostata su Base64.

Se il flusso CanSeek proprietà false, l'allegato e MailMessage che lo contiene non sono riutilizzabili. È necessario fornire un flusso che è possibile eseguire ricerche per riutilizzare un allegato.

Esempio di codice riportato di seguito viene illustrato come chiamare questo costruttore.

// The following example sends a summary of a log file as the message
// and the log as an e-mail attachment.
public static void SendNamedAndTypedErrorLog(string server, string recipientList)
{
	// Create a message from logMailer@contoso.com to recipientList.
	MailMessage message = new MailMessage(
	   "logMailer@contoso.com", recipientList);

	message.Subject = "Error Log report";
	string fileName = "log.txt";
	// Get the file stream for the error log.
	// Requires the System.IO namespace.
	FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
	StreamReader s = new StreamReader(fs);
	int errors = 0;
	while (s.ReadLine() != null)
	{
		// Process each line from the log file here.
		errors++;
	}
	// The e-mail message summarizes the data found in the log.
	message.Body = String.Format("{0} errors in log as of {1}",
		errors, DateTime.Now);
	// Close the stream reader. This also closes the file.
	s.Close();
	// Re-open the file at the beginning to make the attachment.
	fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
	// Create a name for the log data file.
	string name = "log" + DateTime.Now.ToString() + ".txt";
	// Create the attachment, name it, and specify the MIME type.
	Attachment data = new Attachment(fs, name, MediaTypeNames.Text.Plain);
	// Add the attachment to the message.
	message.Attachments.Add(data);
	// Send the message.
	// Include credentials if the server requires them.
	SmtpClient client = new SmtpClient(server);
	client.Credentials = CredentialCache.DefaultNetworkCredentials;

   try { 
      client.Send(message);
    }
    catch (Exception ex) {
      Console.WriteLine("Exception caught in SendNamedAndTypedErrorLog: {0}", 
                  ex.ToString() );
    }
	data.Dispose();
	// Close the log file.
	fs.Close();
}

.NET Framework
Disponibile da 2.0
Torna all'inizio
Mostra: