MailMessage.AlternateViews Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene l'insieme di allegati utilizzato per memorizzare i formati alternativi del corpo del messaggio.
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
Valore della proprietà
Classe AlternateViewCollection scrivibile.
Esempio
L'esempio di codice seguente illustra la creazione e l'invio di un messaggio di posta elettronica con un testo normale e una visualizzazione alternativa 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
Commenti
Utilizzare la AlternateViews proprietà per specificare copie di un messaggio di posta elettronica in formati diversi. Ad esempio, se si invia un messaggio in HTML, è anche possibile specificare una versione di testo normale nel caso in cui alcuni destinatari usino lettori di posta elettronica che non possono visualizzare contenuto HTML.
Per aggiungere una visualizzazione alternativa a un oggetto, creare un MailMessageAttachment oggetto per la visualizzazione e quindi aggiungerlo all'insieme restituito da AlternateViews. Utilizzare la Body proprietà per specificare la versione di testo e usare la AlternateViews raccolta per specificare le visualizzazioni con altri tipi MIME. Usare i membri della MediaTypeNames classe per specificare il tipo MIME per la visualizzazione alternativa.