Compartilhar via


Attachment Classe

Definição

Representa um anexo a um email.

public ref class Attachment : System::Net::Mail::AttachmentBase
public class Attachment : System.Net.Mail.AttachmentBase
type Attachment = class
    inherit AttachmentBase
Public Class Attachment
Inherits AttachmentBase
Herança
Attachment

Exemplos

O exemplo de código a seguir demonstra a anexação de um arquivo a uma mensagem de email.

public static void CreateMessageWithAttachment(string server)
{
    // Specify the file to be attached and sent.
    // This example assumes that a file named Data.xls exists in the
    // current working directory.
    string file = "data.xls";
    // Create a message and set up the recipients.
    MailMessage message = new MailMessage(
        "jane@contoso.com",
        "ben@contoso.com",
        "Quarterly data report.",
        "See the attached spreadsheet.");

    // Create  the file attachment for this email message.
    Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
    // Add time stamp information for the file.
    ContentDisposition disposition = data.ContentDisposition;
    disposition.CreationDate = System.IO.File.GetCreationTime(file);
    disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
    disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
    // Add the file attachment to this email message.
    message.Attachments.Add(data);

    //Send the message.
    SmtpClient client = new SmtpClient(server);
    // Add credentials if the SMTP server requires them.
    client.Credentials = CredentialCache.DefaultNetworkCredentials;

    try
    {
        client.Send(message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}",
            ex.ToString());
    }
    // Display the values in the ContentDisposition for the attachment.
    ContentDisposition cd = data.ContentDisposition;
    Console.WriteLine("Content disposition");
    Console.WriteLine(cd.ToString());
    Console.WriteLine("File {0}", cd.FileName);
    Console.WriteLine("Size {0}", cd.Size);
    Console.WriteLine("Creation {0}", cd.CreationDate);
    Console.WriteLine("Modification {0}", cd.ModificationDate);
    Console.WriteLine("Read {0}", cd.ReadDate);
    Console.WriteLine("Inline {0}", cd.Inline);
    Console.WriteLine("Parameters: {0}", cd.Parameters.Count);
    foreach (DictionaryEntry d in cd.Parameters)
    {
        Console.WriteLine("{0} = {1}", d.Key, d.Value);
    }
    data.Dispose();
}

Comentários

A Attachment classe é usada com a MailMessage classe. Todas as mensagens incluem um Body, que contém o conteúdo da mensagem. Além do corpo, talvez você queira enviar arquivos adicionais. Eles são enviados como anexos e são representados como Attachment instâncias. Para adicionar um anexo a uma mensagem de email, adicione-o MailMessage.Attachments à coleção.

O conteúdo do anexo pode ser um nome de arquivo ou de Stringarquivo Stream. Você pode especificar o conteúdo em um anexo usando qualquer um dos Attachment construtores.

As informações do cabeçalho Tipo de Conteúdo mime para o anexo são representadas pela ContentType propriedade. O cabeçalho Content-Type especifica o tipo de mídia e o subtipo e quaisquer parâmetros associados. Use ContentType para obter a instância associada a um anexo.

O cabeçalho MIME Content-Disposition é representado pela ContentDisposition propriedade. O cabeçalho Content-Disposition especifica os carimbos de hora de apresentação e arquivo para um anexo. Um cabeçalho Content-Disposition será enviado somente se o anexo for um arquivo. Use a ContentDisposition propriedade para obter a instância associada a um anexo.

O cabeçalho mime content-Transfer-Encoding é representado pela TransferEncoding propriedade.

Construtores

Nome Description
Attachment(Stream, ContentType)

Inicializa uma nova instância da Attachment classe com o fluxo e o tipo de conteúdo especificados.

Attachment(Stream, String, String)

Inicializa uma nova instância da Attachment classe com as informações de tipo de fluxo, nome e MIME especificadas.

Attachment(Stream, String)

Inicializa uma nova instância da Attachment classe com o fluxo e o nome especificados.

Attachment(String, ContentType)

Inicializa uma nova instância da Attachment classe com a cadeia de caracteres de conteúdo especificada e ContentType.

Attachment(String, String)

Inicializa uma nova instância da Attachment classe com as informações de tipo MIME e cadeia de caracteres de conteúdo especificadas.

Attachment(String)

Inicializa uma nova instância da Attachment classe com a cadeia de caracteres de conteúdo especificada.

Propriedades

Nome Description
ContentDisposition

Obtém a disposição de conteúdo MIME para este anexo.

ContentId

Obtém ou define a ID de conteúdo MIME para este anexo.

(Herdado de AttachmentBase)
ContentStream

Obtém o fluxo de conteúdo desse anexo.

(Herdado de AttachmentBase)
ContentType

Obtém o tipo de conteúdo desse anexo.

(Herdado de AttachmentBase)
Name

Obtém ou define o valor do nome do tipo de conteúdo MIME no tipo de conteúdo associado a esse anexo.

NameEncoding

Especifica a codificação para o AttachmentName.

TransferEncoding

Obtém ou define a codificação desse anexo.

(Herdado de AttachmentBase)

Métodos

Nome Description
CreateAttachmentFromString(String, ContentType)

Cria um anexo de email usando o conteúdo da cadeia de caracteres especificada e o especificado ContentType.

CreateAttachmentFromString(String, String, Encoding, String)

Cria um anexo de email usando o conteúdo da cadeia de caracteres especificada, o nome do tipo de conteúdo MIME especificado, a codificação de caracteres e as informações de cabeçalho MIME para o anexo.

CreateAttachmentFromString(String, String)

Cria um anexo de email usando o conteúdo da cadeia de caracteres especificada e o nome do tipo de conteúdo MIME especificado.

Dispose()

Libera os recursos usados pelo AttachmentBase.

(Herdado de AttachmentBase)
Dispose(Boolean)

Libera os recursos não gerenciados usados pelo AttachmentBase e, opcionalmente, libera os recursos gerenciados.

(Herdado de AttachmentBase)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém a Type instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial da atual Object.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a