MailMessage.AlternateViews Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá kolekci příloh sloužící k ukládání alternativních formulářů textu zprávy.
public:
property System::Net::Mail::AlternateViewCollection ^ AlternateViews { System::Net::Mail::AlternateViewCollection ^ get(); };
public System.Net.Mail.AlternateViewCollection AlternateViews { get; }
member this.AlternateViews : System.Net.Mail.AlternateViewCollection
Public ReadOnly Property AlternateViews As AlternateViewCollection
Hodnota vlastnosti
Zapisovatelný AlternateViewCollection.
Příklady
Následující příklad kódu ukazuje vytvoření a odeslání e-mailové zprávy s prostým textem a alternativní zobrazení HTML.
static void CreateMessageWithMultipleViews( String^ server, String^ recipients )
{
// Create a message and set up the recipients.
MailMessage^ message = gcnew MailMessage( L"jane@contoso.com",recipients,L"This email message has multiple views.",L"This is some plain text." );
// Construct the alternate body as HTML.
String^ body = L"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
body = String::Concat( body, L"<HTML><HEAD><META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\">" );
body = String::Concat( body, L"</HEAD><BODY><DIV><FONT face=Arial color=#ff0000 size=2>this is some HTML text" );
body = String::Concat( body, L"</FONT></DIV></BODY></HTML>" );
// Add the alternate body to the message.
AlternateView^ alternate = AlternateView::CreateAlternateViewFromString(body);
message->AlternateViews->Add(alternate);
// Send the message.
SmtpClient^ client = gcnew SmtpClient( server );
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send( message );
// Display the values in the ContentType for the attachment.
ContentType^ c = alternate->ContentType;
Console::WriteLine( L"Content type" );
Console::WriteLine( c );
Console::WriteLine( L"Boundary {0}", c->Boundary );
Console::WriteLine( L"CharSet {0}", c->CharSet );
Console::WriteLine( L"MediaType {0}", c->MediaType );
Console::WriteLine( L"Name {0}", c->Name );
Console::WriteLine( L"Parameters: {0}", c->Parameters->Count );
IEnumerator^ myEnum = c->Parameters->GetEnumerator();
while ( myEnum->MoveNext() )
{
DictionaryEntry^ d = safe_cast<DictionaryEntry^>(myEnum->Current);
Console::WriteLine( L"{0} = {1}", d->Key, d->Value );
}
Console::WriteLine();
alternate->~AlternateView();
}
public static void CreateMessageWithMultipleViews(string server, string recipients)
{
// Create a message and set up the recipients.
MailMessage message = new MailMessage(
"jane@contoso.com",
recipients,
"This email message has multiple views.",
"This is some plain text.");
// Construct the alternate body as HTML.
string body = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
body += "<HTML><HEAD><META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\">";
body += "</HEAD><BODY><DIV><FONT face=Arial color=#ff0000 size=2>this is some HTML text";
body += "</FONT></DIV></BODY></HTML>";
ContentType mimeType = new System.Net.Mime.ContentType("text/html");
// Add the alternate body to the message.
AlternateView alternate = AlternateView.CreateAlternateViewFromString(body, mimeType);
message.AlternateViews.Add(alternate);
// Send the message.
SmtpClient client = new SmtpClient(server);
client.Credentials = CredentialCache.DefaultNetworkCredentials;
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in CreateMessageWithMultipleViews(): {0}",
ex.ToString());
}
// Display the values in the ContentType for the attachment.
ContentType c = alternate.ContentType;
Console.WriteLine("Content type");
Console.WriteLine(c.ToString());
Console.WriteLine("Boundary {0}", c.Boundary);
Console.WriteLine("CharSet {0}", c.CharSet);
Console.WriteLine("MediaType {0}", c.MediaType);
Console.WriteLine("Name {0}", c.Name);
Console.WriteLine("Parameters: {0}", c.Parameters.Count);
foreach (DictionaryEntry d in c.Parameters)
{
Console.WriteLine("{0} = {1}", d.Key, d.Value);
}
Console.WriteLine();
alternate.Dispose();
}
Public Shared Sub CreateMessageWithMultipleViews(ByVal server As String, ByVal recipients As String)
' Create a message and set up the recipients.
Dim message As MailMessage = New MailMessage(
"jane@contoso.com",
recipients,
"This email message has multiple views.",
"This is some plain text.")
' Construct the alternate body as HTML.
Dim body As String = "<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"">"
body += "<HTML><HEAD><META http-equiv=Content-Type content=""text/html; charset=iso-8859-1"">"
body += "</HEAD><BODY><DIV><FONT face=Arial color=#ff0000 size=2>this is some HTML text"
body += "</FONT></DIV></BODY></HTML>"
Dim mimeType As ContentType = New System.Net.Mime.ContentType("text/html")
' Add the alternate body to the message.
Dim alternate As AlternateView = AlternateView.CreateAlternateViewFromString(body, mimeType)
message.AlternateViews.Add(alternate)
' Send the message.
Dim client As SmtpClient = New SmtpClient(server)
client.Credentials = CredentialCache.DefaultNetworkCredentials
Try
client.Send(message)
Catch ex As Exception
Console.WriteLine("Exception caught in CreateMessageWithMultipleViews(): {0}", ex.ToString())
End Try
' Display the values in the ContentType for the attachment.
Dim c As ContentType = alternate.ContentType
Console.WriteLine("Content type")
Console.WriteLine(c.ToString())
Console.WriteLine("Boundary {0}", c.Boundary)
Console.WriteLine("CharSet {0}", c.CharSet)
Console.WriteLine("MediaType {0}", c.MediaType)
Console.WriteLine("Name {0}", c.Name)
Console.WriteLine("Parameters: {0}", c.Parameters.Count)
For Each d As DictionaryEntry In c.Parameters
Console.WriteLine("{0} = {1}", d.Key, d.Value)
Next
Console.WriteLine()
alternate.Dispose()
End Sub
Poznámky
AlternateViews Pomocí vlastnosti můžete zadat kopie e-mailové zprávy v různých formátech. Pokud například odesíláte zprávu ve formátu HTML, můžete také chtít zadat verzi ve formátu prostého textu pro případ, že někteří příjemci používají čtečky e-mailů, které nemůžou zobrazit obsah HTML.
Pokud chcete k objektu MailMessage přidat alternativní zobrazení, vytvořte Attachment pro zobrazení a pak ho přidejte do kolekce vrácené nástrojem AlternateViews. Body Pomocí vlastnosti určete verzi textu a pomocí AlternateViews kolekce určete zobrazení s jinými typy MIME. MediaTypeNames Pomocí členů třídy určete typ MIME pro alternativní zobrazení.