Freigeben über


MailMessage.Headers Eigenschaft

Definition

Ruft die E-Mail-Header ab, die mit dieser E-Mail übertragen werden.

public:
 property System::Collections::Specialized::NameValueCollection ^ Headers { System::Collections::Specialized::NameValueCollection ^ get(); };
public System.Collections.Specialized.NameValueCollection Headers { get; }
member this.Headers : System.Collections.Specialized.NameValueCollection
Public ReadOnly Property Headers As NameValueCollection

Eigenschaftswert

Eine NameValueCollection , die die E-Mail-Kopfzeilen enthält.

Beispiele

Im folgenden Codebeispiel wird die Anzeige der Header für eine E-Mail-Nachricht veranschaulicht.

static void CreateMessageWithAttachment4( String^ server, String^ to )
{
   
   // Specify the file to be attached and sent.
   // This example uses a file on a UNC share.
   String^ file = L"\\\\share3\\c$\\reports\\data.xls";
   
   // Create a message and set up the recipients.
   MailMessage^ message = gcnew MailMessage( L"ReportMailer@contoso.com",to,L"Quarterly data report",L"See the attached spreadsheet." );
   
   // Create  the file attachment for this email message.
   Attachment^ data = gcnew Attachment("qtr3.xls", 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 );
   disposition->DispositionType = DispositionTypeNames::Attachment;
   
   // Add the file attachment to this email message.
   message->Attachments->Add( data );
   
   //Send the message.
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Add credentials if the SMTP server requires them.
   client->Credentials = dynamic_cast<ICredentialsByHost^>(CredentialCache::DefaultNetworkCredentials);
   client->Send( message );
   
   // Display the message headers.
   array<String^>^keys = message->Headers->AllKeys;
   Console::WriteLine( L"Headers" );
   IEnumerator^ myEnum3 = keys->GetEnumerator();
   while ( myEnum3->MoveNext() )
   {
      String^ s = safe_cast<String^>(myEnum3->Current);
      Console::WriteLine( L"{0}:", s );
      Console::WriteLine( L"    {0}", message->Headers[ s ] );
   }

   data->~Attachment();
   client->~SmtpClient();
}
public static void CreateMessageWithAttachment4(string server, string to)
{
    // Specify the file to be attached and sent.
    // This example uses a file on a UNC share.
    string file = @"\\share3\c$\reports\data.xls";
    // Create a message and set up the recipients.
    MailMessage message = new MailMessage(
       "ReportMailer@contoso.com",
       to,
       "Quarterly data report",
       "See the attached spreadsheet.");

    // Create  the file attachment for this email message.
    Attachment data = new Attachment("qtr3.xls", 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);
    disposition.DispositionType = DispositionTypeNames.Attachment;
    // Add the file attachment to this email message.
    message.Attachments.Add(data);
    //Send the message.
    SmtpClient client = new SmtpClient(server);
    // Add credentials if the SMTP server requires them.
    client.Credentials = (ICredentialsByHost)CredentialCache.DefaultNetworkCredentials;
    client.Send(message);
    // Display the message headers.
    string[] keys = message.Headers.AllKeys;
    Console.WriteLine("Headers");
    foreach (string s in keys)
    {
        Console.WriteLine("{0}:", s);
        Console.WriteLine("    {0}", message.Headers[s]);
    }
    data.Dispose();
}
Public Shared Sub CreateMessageWithAttachment4(ByVal server As String, ByVal [to] As String)
    ' Specify the file to be attached And sent.
    ' This example uses a file on a UNC share.
    Dim file As String = "\\share3\c$\reports\data.xls"
    Dim message As MailMessage = New MailMessage("ReportMailer@contoso.com", [to], "Quarterly data report", "See the attached spreadsheet.")
    ' Create  the file attachment for this email message.
    Dim data As Attachment = New Attachment("qtr3.xls", MediaTypeNames.Application.Octet)
    ' Add time stamp information for the file.
    Dim disposition As ContentDisposition = data.ContentDisposition
    disposition.CreationDate = System.IO.File.GetCreationTime(file)
    disposition.ModificationDate = System.IO.File.GetLastWriteTime(file)
    disposition.ReadDate = System.IO.File.GetLastAccessTime(file)
    disposition.DispositionType = DispositionTypeNames.Attachment
    ' Add the file attachment to this email message.
    message.Attachments.Add(data)
    'Send the message.
    Dim client As SmtpClient = New SmtpClient(server)
    ' Add credentials if the SMTP server requires them.
    client.Credentials = CType(CredentialCache.DefaultNetworkCredentials, ICredentialsByHost)
    client.Send(message)
    ' Display the message headers.
    Dim keys As String() = message.Headers.AllKeys
    Console.WriteLine("Headers")

    For Each s As String In keys
        Console.WriteLine("{0}:", s)
        Console.WriteLine("    {0}", message.Headers(s))
    Next

    data.Dispose()
End Sub

Hinweise

Die Headers -Eigenschaft ermöglicht einer Anwendung den Zugriff auf die Headerauflistung für die Nachricht. Während diese Sammlung schreibgeschützt ist (eine neue Auflistung kann nicht festgelegt werden), können benutzerdefinierte Header dieser Auflistung hinzugefügt oder gelöscht werden. Alle hinzugefügten benutzerdefinierten Header werden beim Senden des MailMessage instance eingeschlossen. Bevor eine Nachricht gesendet wird, werden nur Header, die speziell zu dieser Auflistung in der Headers -Eigenschaft hinzugefügt wurden, in der Auflistung enthalten. Nachdem die MailMessage instance gesendet wurde, enthält die Headers -Eigenschaft auch Header, die mithilfe der zugeordneten Eigenschaften der Klasse oder parameter festgelegt werden, die MailMessage übergeben werden, wenn ein MailMessage zum Initialisieren eines MailMessage Objekts verwendet wird.

Wenn einige E-Mail-Header falsch formatiert sind, können sie dazu führen, dass die E-Mail-Nachricht beschädigt wird. Daher sollte jeder E-Mail-Header in der Headerauflistung, der mithilfe einer Eigenschaft für die MailMessage Klasse festgelegt werden kann, nur mit der Klasseneigenschaft oder als Parameter festgelegt werden, der MailMessage übergeben wird, wenn ein MailMessageMailMessage Objekt initialisiert wird. Die folgende Liste von E-Mail-Headern sollte nicht mithilfe der -Eigenschaft hinzugefügt werden, und alle Werte, die Headers für diese Header mit der Headers -Eigenschaft festgelegt wurden, werden verworfen oder überschrieben, wenn die Nachricht gesendet wird:

  • Bcc

  • Cc

  • Inhalts-ID

  • Content-Location

  • Content-Transfer-Encoding

  • Content-Type

  • Datum

  • From

  • Wichtigkeit

  • MIME-Version

  • Priorität

  • Antwort an

  • Sender

  • An

  • X-Priorität

Wenn die Anwendung keinen X-Sender-Header mit der Headers -Eigenschaft angibt, erstellt die MailMessage -Klasse einen, wenn die Nachricht gesendet wird.

Absender, Empfänger, Betreff und Textkörper einer E-Mail-Nachricht können als Parameter angegeben werden, wenn ein MailMessage zum Initialisieren eines MailMessage Objekts verwendet wird. Diese Parameter können auch mithilfe von Eigenschaften für das MailMessage Objekt festgelegt oder zugegriffen werden.

Die Header und Elemente der primären E-Mail-Nachricht für die Nachricht können mithilfe der folgenden Eigenschaften der MailMessage -Klasse festgelegt werden.

E-Mail-Header oder -Teil Eigenschaft
Attachments Attachments
Blinde Carbonkopien (BCC) Bcc
Carbon Copies (CC) CC
Content-Type BodyEncoding
Codierung für benutzerdefinierte Header HeadersEncoding
Nachrichtentext Body
Priorität Priority
Recipient To
Antwort an ReplyToList
Sender From
Subject Subject

Gilt für: