ContentType.Parameters Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает словарь, который содержит параметры заголовка Content-Type, представляемого данным экземпляром.
public:
property System::Collections::Specialized::StringDictionary ^ Parameters { System::Collections::Specialized::StringDictionary ^ get(); };
public System.Collections.Specialized.StringDictionary Parameters { get; }
member this.Parameters : System.Collections.Specialized.StringDictionary
Public ReadOnly Property Parameters As StringDictionary
Значение свойства
Доступный для записи объект StringDictionary, содержащий пары имя/значение.
Примеры
В следующем примере кода отображаются значения в словаре, возвращаемом этим свойством.
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();
}
Комментарии
Вы можете задать параметры, указав все значение Content-Header при создании ContentType объекта или добавить параметры в объект , StringDictionary возвращаемый свойством Parameters .
При добавлении записи параметра в словарь имя параметра является ключом записи, а значение параметра — значением записи.
Грамматика, описывающая синтаксис заголовка Content-Type, описана в разделе 5.1 RFC 2045. RFC 2046 содержит подробные сведения о типах носителей MIME и связанных с ними параметрах. Эти RFC доступны по адресу https://www.ietf.org.