Attachment Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса Attachment.
Перегрузки
| Имя | Описание |
|---|---|
| Attachment(String) |
Инициализирует новый экземпляр класса с указанной строкой содержимого Attachment . |
| Attachment(Stream, ContentType) |
Инициализирует новый экземпляр Attachment класса с указанным потоком и типом контента. |
| Attachment(Stream, String) |
Инициализирует новый экземпляр Attachment класса с указанным потоком и именем. |
| Attachment(String, ContentType) |
Инициализирует новый экземпляр класса с указанной строкой содержимого Attachment и ContentType. |
| Attachment(String, String) |
Инициализирует новый экземпляр класса с указанной строкой содержимого Attachment и сведениями о типе MIME. |
| Attachment(Stream, String, String) |
Инициализирует новый экземпляр Attachment класса с указанным потоком, именем и сведениями о типе MIME. |
Attachment(String)
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
Инициализирует новый экземпляр класса с указанной строкой содержимого Attachment .
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)
Параметры
Исключения
fileName равно null.
fileName значение пусто.
Примеры
В следующем примере кода показано, как вызвать этот конструктор.
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();
}
Комментарии
Свойства задаются следующим образом:
| Недвижимость | Ценность |
|---|---|
| MediaType | Plain. |
| TransferEncoding | QuotedPrintable. |
Применяется к
Attachment(Stream, ContentType)
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
Инициализирует новый экземпляр Attachment класса с указанным потоком и типом контента.
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)
Параметры
- contentType
- ContentType
Объект, ContentType описывающий данные в contentStream.
Исключения
Примеры
В следующем примере кода показано, как вызвать этот конструктор.
// 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();
}
Комментарии
Для свойства TransferEncoding задано значение Base64.
Если свойство потока CanSeek является false, вложение и MailMessage содержащие его не используются повторно. Необходимо указать поток, который можно искать для повторного использования вложения.
Применяется к
Attachment(Stream, String)
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
Инициализирует новый экземпляр Attachment класса с указанным потоком и именем.
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)
Параметры
- name
- String
Name Значение String свойства связанного ContentType с этим вложением. Это значение может быть равно null.
Исключения
contentStream равно null.
Примеры
В следующем примере кода показано, как вызвать этот конструктор.
// 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;
}
Комментарии
Если name значение не nullString.Empty равно (""), ContentType то для этого вложения создается значение Name свойства name. Для свойства TransferEncoding задано значение Base64.
Если свойство потока CanSeek является false, вложение и MailMessage содержащие его не используются повторно. Для повторного использования вложения необходимо указать поток, который можно искать.
Применяется к
Attachment(String, ContentType)
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
Инициализирует новый экземпляр класса с указанной строкой содержимого Attachment и 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)
Параметры
- contentType
- ContentType
Объект, ContentType описывающий данные в fileName.
Исключения
fileName равно null.
contentType не соответствует правильному формату.
Применяется к
Attachment(String, String)
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
Инициализирует новый экземпляр класса с указанной строкой содержимого Attachment и сведениями о типе 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)
Параметры
- mediaType
- String
Значение, String содержащее сведения о заголовке содержимого MIME для этого вложения. Это значение может быть равно null.
Исключения
fileName равно null.
mediaType не соответствует правильному формату.
Примеры
В следующем примере кода показано, как вызвать этот конструктор.
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();
}
Комментарии
Если mediaType значение равно nullString.Empty (""), MediaType свойству для этого вложения присвоено значение Plain. Если mediaType он не null является строкой нулевой длины, она используется для создания связанного ContentType с этим вложением.
Применяется к
Attachment(Stream, String, String)
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
- Исходный код:
- Attachment.cs
Инициализирует новый экземпляр Attachment класса с указанным потоком, именем и сведениями о типе 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)
Параметры
- name
- String
Name Значение String свойства связанного ContentType с этим вложением. Это значение может быть равно null.
- mediaType
- String
Значение, String содержащее сведения о заголовке содержимого MIME для этого вложения. Это значение может быть равно null.
Исключения
contentStream равно null.
mediaType не соответствует правильному формату.
Примеры
В следующем примере кода показано, как вызвать этот конструктор.
// 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();
}
Комментарии
Если mediaType значение не nullString.Empty равно (""), оно используется для создания класса, связанного ContentType с этим вложением.
Если mediaType и оба name содержат Name сведения, используется значение, указанное в name . Для свойства TransferEncoding задано значение Base64.
Если свойство потока CanSeek является false, вложение и MailMessage содержащие его не используются повторно. Для повторного использования вложения необходимо указать поток, который можно искать.