Attachment Konstruktory
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í.
Inicializuje novou instanci Attachment třídy.
Přetížení
Attachment(String) |
Inicializuje novou instanci Attachment třídy se zadaným řetězcem obsahu. |
Attachment(Stream, ContentType) |
Inicializuje novou instanci třídy Attachment se zadaným datovým proudem a typem obsahu. |
Attachment(Stream, String) |
Inicializuje novou instanci Attachment třídy se zadaným datovým proudem a názvem. |
Attachment(String, ContentType) |
Inicializuje novou instanci třídy Attachment se zadaným řetězcem obsahu a ContentType. |
Attachment(String, String) |
Inicializuje novou instanci Attachment třídy se zadaným řetězcem obsahu a informacemi o typu MIME. |
Attachment(Stream, String, String) |
Inicializuje novou instanci Attachment třídy se zadaným datovým proudem, názvem a informacemi o typu MIME. |
Attachment(String)
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
Inicializuje novou instanci Attachment třídy se zadaným řetězcem obsahu.
public:
Attachment(System::String ^ fileName);
public Attachment (string fileName);
new System.Net.Mail.Attachment : string -> System.Net.Mail.Attachment
Public Sub New (fileName As String)
Parametry
Výjimky
fileName
je null
.
fileName
je prázdný.
Příklady
Následující příklad kódu ukazuje, jak volat tento konstruktor.
static void CreateMessageInlineAttachment2( String^ server, String^ textMessage )
{
// Create a message and set up the recipients.
MailMessage^ message = gcnew MailMessage( L"jane@contoso.com",L"ben@contoso.com",L"A text message for you.",L"Message: " );
// Attach the message string to this email message.
Attachment^ data = gcnew Attachment( textMessage );
// Send textMessage as part of the email body.
message->Attachments->Add( data );
ContentType^ content = data->ContentType;
content->MediaType = MediaTypeNames::Text::Plain;
//Send the message.
// Include credentials if the server requires them.
SmtpClient^ client = gcnew SmtpClient( server );
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send( message );
data->~Attachment();
client->~SmtpClient();
}
public static void CreateMessageInlineAttachment2(string server, string
textMessage)
{
// Create a message and set up the recipients.
MailMessage message = new MailMessage(
"jane@contoso.com",
"ben@contoso.com",
"A text message for you.",
"Message: ");
// Attach the message string to this email message.
Attachment data = new Attachment(textMessage);
// Send textMessage as part of the email body.
message.Attachments.Add(data);
ContentType content = data.ContentType;
content.MediaType = MediaTypeNames.Text.Plain;
//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 CreateMessageInlineAttachment2: {0}",
ex.ToString());
}
data.Dispose();
}
Poznámky
Vlastnosti jsou nastaveny takto:
Vlastnost | Hodnota |
---|---|
MediaType | Plain. |
TransferEncoding | QuotedPrintable. |
Platí pro
Attachment(Stream, ContentType)
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
Inicializuje novou instanci třídy Attachment se zadaným datovým proudem a typem obsahu.
public:
Attachment(System::IO::Stream ^ contentStream, System::Net::Mime::ContentType ^ contentType);
public Attachment (System.IO.Stream contentStream, System.Net.Mime.ContentType contentType);
new System.Net.Mail.Attachment : System.IO.Stream * System.Net.Mime.ContentType -> System.Net.Mail.Attachment
Public Sub New (contentStream As Stream, contentType As ContentType)
Parametry
- contentType
- ContentType
ContentType, která popisuje data v contentStream
.
Výjimky
Příklady
Následující příklad kódu ukazuje, jak volat tento konstruktor.
// The following example sends a summary of a log file as the message
// and the log as an email attachment.
static void SendErrorLog( String^ server, String^ recipientList )
{
// Create a message from logMailer@contoso.com to recipientList.
MailMessage^ message = gcnew MailMessage( L"logMailer@contoso.com",recipientList );
message->Subject = L"Error Log report";
String^ fileName = L"log.txt";
// Get the file stream for the error log.
// Requires the System.IO namespace.
FileStream^ fs = gcnew FileStream( fileName,FileMode::Open,FileAccess::Read );
StreamReader^ s = gcnew StreamReader( fs );
int errors = 0;
while ( s->ReadLine() != nullptr )
{
// Process each line from the log file here.
errors++;
}
message->Body = String::Format( L"{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 = gcnew FileStream( fileName,FileMode::Open,FileAccess::Read );
// Make a contentType indicating that the log data
// that is attached is plain text.
ContentType^ ct = gcnew ContentType( MediaTypeNames::Text::Plain );
// Attach the log file stream to the email message.
Attachment^ data = gcnew Attachment( fs,ct );
ContentDisposition^ disposition = data->ContentDisposition;
// Suggest a file name for the attachment.
disposition->FileName = String::Format( L"log{0}.txt", DateTime::Now );
// Add the attachment to the message.
message->Attachments->Add( data );
// Send the message.
// Include credentials if the server requires them.
SmtpClient^ client = gcnew SmtpClient( server );
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send( message );
data->~Attachment();
client->~SmtpClient();
// Close the log file.
fs->Close();
}
// The following example sends a summary of a log file as the message
// and the log as an email attachment.
public static void SendErrorLog(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 email 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);
// Make a contentType indicating that the log data
// that is attached is plain text.
ContentType ct = new ContentType(MediaTypeNames.Text.Plain);
// Attach the log file stream to the email message.
Attachment data = new Attachment(fs, ct);
ContentDisposition disposition = data.ContentDisposition;
// Suggest a file name for the attachment.
disposition.FileName = "log" + DateTime.Now.ToString() + ".txt";
// 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 SendErrorLog: {0}",
ex.ToString());
}
data.Dispose();
// Close the log file.
fs.Close();
}
Poznámky
Vlastnost TransferEncoding je nastavena na Base64.
Pokud je vlastnost CanSeek datového proudu false
, příloha a MailMessage, které ho obsahují, nelze opakovaně použít. Pokud chcete znovu použít přílohu, musíte zadat datový proud, který se dá prohledávat.
Platí pro
Attachment(Stream, String)
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
Inicializuje novou instanci Attachment třídy se zadaným datovým proudem a názvem.
public:
Attachment(System::IO::Stream ^ contentStream, System::String ^ name);
public Attachment (System.IO.Stream contentStream, string? name);
public Attachment (System.IO.Stream contentStream, string name);
new System.Net.Mail.Attachment : System.IO.Stream * string -> System.Net.Mail.Attachment
Public Sub New (contentStream As Stream, name As String)
Parametry
- name
- String
String, která obsahuje hodnotu vlastnosti NameContentType přidružené k této příloze. Tato hodnota může být null
.
Výjimky
contentStream
je null
.
Příklady
Následující příklad kódu ukazuje, jak volat tento konstruktor.
// The following example sends a summary of a log file as the message
// and the log as an email attachment.
static void SendNamedErrorLog( String^ server, String^ recipientList )
{
// Create a message from logMailer@contoso.com to recipientList.
MailMessage^ message = gcnew MailMessage( L"logMailer@contoso.com",recipientList );
message->Subject = L"Error Log report";
String^ fileName = L"log.txt";
// Get the file stream for the error log.
// Requires the System.IO namespace.
FileStream^ fs = gcnew FileStream( fileName,FileMode::Open,FileAccess::Read );
StreamReader^ s = gcnew StreamReader( fs );
int errors = 0;
while ( s->ReadLine() != nullptr )
{
// Process each line from the log file here.
errors++;
}
message->Body = String::Format( L"{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 = gcnew FileStream( fileName,FileMode::Open,FileAccess::Read );
// Make a ContentType indicating that the log data
// that is attached is plain text and is named.
ContentType^ ct = gcnew ContentType;
ct->MediaType = MediaTypeNames::Text::Plain;
ct->Name = String::Format( L"log{0}.txt", DateTime::Now );
// Create the attachment.
Attachment^ data = gcnew Attachment( fs,ct );
// Add the attachment to the message.
message->Attachments->Add( data );
// Send the message.
// Include credentials if the server requires them.
SmtpClient^ client = gcnew SmtpClient( server );
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send( message );
data->~Attachment();
client->~SmtpClient();
// Close the log file.
fs->Close();
return;
}
// The following example sends a summary of a log file as the message
// and the log as an email attachment.
public static void SendNamedErrorLog(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 email 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);
// Make a ContentType indicating that the log data
// that is attached is plain text and is named.
ContentType ct = new ContentType();
ct.MediaType = MediaTypeNames.Text.Plain;
ct.Name = "log" + DateTime.Now.ToString() + ".txt";
// Create the attachment.
Attachment data = new Attachment(fs, ct);
// 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 SendNamedErrorLog: {0}",
ex.ToString());
}
data.Dispose();
// Close the log file.
fs.Close();
return;
}
Poznámky
Pokud name
není null
nebo se rovná String.Empty (""), ContentType pro tuto přílohu se sestaví s vlastností Name nastavenou na name
. Vlastnost TransferEncoding je nastavena na Base64.
Pokud je vlastnost CanSeek datového proudu false
, příloha a MailMessage, které ho obsahují, nelze opakovaně použít. Pokud chcete znovu použít přílohu, musíte zadat datový proud, který se dá prohledávat.
Platí pro
Attachment(String, ContentType)
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
Inicializuje novou instanci třídy Attachment se zadaným řetězcem obsahu a ContentType.
public:
Attachment(System::String ^ fileName, System::Net::Mime::ContentType ^ contentType);
public Attachment (string fileName, System.Net.Mime.ContentType contentType);
new System.Net.Mail.Attachment : string * System.Net.Mime.ContentType -> System.Net.Mail.Attachment
Public Sub New (fileName As String, contentType As ContentType)
Parametry
- contentType
- ContentType
ContentType, která popisuje data v fileName
.
Výjimky
fileName
je null
.
mediaType
není ve správném formátu.
Platí pro
Attachment(String, String)
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
Inicializuje novou instanci Attachment třídy se zadaným řetězcem obsahu a informacemi o typu MIME.
public:
Attachment(System::String ^ fileName, System::String ^ mediaType);
public Attachment (string fileName, string? mediaType);
public Attachment (string fileName, string mediaType);
new System.Net.Mail.Attachment : string * string -> System.Net.Mail.Attachment
Public Sub New (fileName As String, mediaType As String)
Parametry
- mediaType
- String
String obsahující informace o záhlaví obsahu MIME pro tuto přílohu. Tato hodnota může být null
.
Výjimky
fileName
je null
.
mediaType
není ve správném formátu.
Příklady
Následující příklad kódu ukazuje, jak volat tento konstruktor.
static void CreateMessageInlineAttachment( String^ server, String^ textMessage )
{
// Create a message and set up the recipients.
MailMessage^ message = gcnew MailMessage( L"jane@contoso.com",L"ben@contoso.com",L"An inline text message for you.",L"Message: " );
// Attach the message string to this email message.
Attachment^ data = gcnew Attachment( textMessage,MediaTypeNames::Text::Plain );
// Send textMessage as part of the email body.
message->Attachments->Add( data );
ContentDisposition^ disposition = data->ContentDisposition;
disposition->Inline = true;
//Send the message.
// Include credentials if the server requires them.
SmtpClient^ client = gcnew SmtpClient( server );
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send( message );
data->~Attachment();
client->~SmtpClient();
}
public static void CreateMessageInlineAttachment(string server, string
textMessage)
{
// Create a message and set up the recipients.
MailMessage message = new MailMessage(
"jane@contoso.com",
"ben@contoso.com",
"An inline text message for you.",
"Message: ");
// Attach the message string to this email message.
Attachment data = new Attachment(textMessage, MediaTypeNames.Text.Plain);
// Send textMessage as part of the email body.
message.Attachments.Add(data);
ContentDisposition disposition = data.ContentDisposition;
disposition.Inline = true;
//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 CreateMessageInlineAttachment: {0}",
ex.ToString());
}
data.Dispose();
}
Poznámky
Je-li mediaType
null
nebo roven String.Empty (""), vlastnost MediaType této přílohy je nastavena na Plain. Pokud mediaType
není null
a nejedná se o řetězec nulové délky, slouží k vytvoření ContentType přidružené k této příloze.
Platí pro
Attachment(Stream, String, String)
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
- Zdroj:
- Attachment.cs
Inicializuje novou instanci Attachment třídy se zadaným datovým proudem, názvem a informacemi o typu MIME.
public:
Attachment(System::IO::Stream ^ contentStream, System::String ^ name, System::String ^ mediaType);
public Attachment (System.IO.Stream contentStream, string? name, string? mediaType);
public Attachment (System.IO.Stream contentStream, string name, string mediaType);
new System.Net.Mail.Attachment : System.IO.Stream * string * string -> System.Net.Mail.Attachment
Public Sub New (contentStream As Stream, name As String, mediaType As String)
Parametry
- name
- String
String, která obsahuje hodnotu vlastnosti NameContentType přidružené k této příloze. Tato hodnota může být null
.
- mediaType
- String
String obsahující informace o záhlaví obsahu MIME pro tuto přílohu. Tato hodnota může být null
.
Výjimky
stream
je null
.
mediaType
není ve správném formátu.
Příklady
Následující příklad kódu ukazuje, jak volat tento konstruktor.
// The following example sends a summary of a log file as the message
// and the log as an email attachment.
static void SendNamedAndTypedErrorLog( String^ server, String^ recipientList )
{
// Create a message from logMailer@contoso.com to recipientList.
MailMessage^ message = gcnew MailMessage( L"logMailer@contoso.com",recipientList );
message->Subject = L"Error Log report";
String^ fileName = L"log.txt";
// Get the file stream for the error log.
// Requires the System.IO namespace.
FileStream^ fs = gcnew FileStream( fileName,FileMode::Open,FileAccess::Read );
StreamReader^ s = gcnew StreamReader( fs );
int errors = 0;
while ( s->ReadLine() != nullptr )
{
// Process each line from the log file here.
errors++;
}
message->Body = String::Format( L"{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 = gcnew FileStream( fileName,FileMode::Open,FileAccess::Read );
// Create a name for the log data file.
String^ name = String::Format( L"log{0}.txt", DateTime::Now );
// Create the attachment, name it, and specify the MIME type.
Attachment^ data = gcnew 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 = gcnew SmtpClient( server );
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send( message );
data->~Attachment();
client->~SmtpClient();
// Close the log file.
fs->Close();
}
// The following example sends a summary of a log file as the message
// and the log as an email 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 email 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();
}
Poznámky
Pokud mediaType
není null
nebo se rovná String.Empty (""), slouží k vytvoření třídy ContentType přidružené k této příloze.
Pokud mediaType
i name
obsahují informace o Name, použije se hodnota zadaná v name
. Vlastnost TransferEncoding je nastavena na Base64.
Pokud je vlastnost CanSeek datového proudu false
, příloha a MailMessage, které ho obsahují, nelze opakovaně použít. Pokud chcete znovu použít přílohu, musíte zadat datový proud, který se dá prohledávat.