Biblioteca de criação e análise de .NET MIME de código aberto
Biblioteca .NET MIME Creation e Parser para criptografia, descriptografia e assinatura de mensagens, além de verificar assinaturas digitais usando padrões S/MIME ou OpenPGP.
O MimeKit é uma biblioteca .NET C# de código aberto que permite aos desenvolvedores de software criar e analisar mensagens de e-mail usando o MIME (Multipurpose Internet Mail Extension). A principal razão por trás do desenvolvimento do projeto foi que se sentiu que a maioria dos softwares de cliente (e servidor) de e-mail tinha implementações MIME menos do que satisfatórias. Na maioria das vezes, esses clientes de e-mail tentariam analisar incorretamente uma mensagem MIME e, portanto, não conseguiriam obter todos os benefícios que o MIME.
O principal objetivo do projeto MimeKit é abordar todos esses problemas o mais próximo possível e, ao mesmo tempo, fornecer aos programadores de computador uma API de alto nível tremendamente fácil de usar. O melhor da biblioteca é que ela é muito mais rápida com todas as soluções disponíveis. Mesmo alguns analisadores MIME comerciais não chegam nem perto de igualar o desempenho do MimeKit.
Introdução ao MimeKit
A maneira mais fácil de instalar o MimeKit é através do NuGet. No Console do Gerenciador de Pacotes do Visual Studio, digite o seguinte comando
Você pode instalá-lo usando pip.
instalar via NuGet
Install-Package MimeKit
Instalar pelo GitHub
git clone --recursive https://github.com/jstedfast/MailKit.git
API .NET para criar novas mensagens
A biblioteca Open Source API MailKit permite que desenvolvedores de software criem mensagens MIME com poucos comandos simples. Um TextPart é uma parte MIME de nó folha com um tipo de mídia de texto. O primeiro argumento para o construtor TextPart especifica o subtipo de mídia, neste caso, simples. Outro subtipo de mídia com o qual você provavelmente está familiarizado é o subtipo HTML. A maneira mais fácil de obter e definir o conteúdo da string da parte MIME é a propriedade Text.
API de código aberto para criar mensagem - C#
var message = new MimeMessage();
message.From.Add(new MailboxAddress("fred", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.To.Add(new MailboxAddress("frans", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.Subject = "FileFormat ";
message.Body = new TextPart("plain")
{
Text = "File Format Developer Guide"
};
Gerar mensagem com anexos usando a API .NET
A API MailKit fornece recursos para gerar uma mensagem com anexos dentro de aplicativos .NET. Os anexos são como qualquer outro MimePart, a principal diferença é que eles contêm um cabeçalho de disposição de conteúdo que mantém o valor do anexo em vez de inline ou nenhum cabeçalho de disposição de conteúdo. Para enviar uma versão de texto/HTML e uma versão de texto/simples da mensagem, você precisa criar uma TextPart para cada parte e adicioná-las a uma multiparte/alternativa.
Gere anexos de e-mail gratuitamente usando C#
var message = new MimeMessage();
message.From.Add(new MailboxAddress("fred", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.To.Add(new MailboxAddress("frans", "This email address is being protected from spam-bots. You need JavaScript enabled to view it."));
message.Subject = "FileFormat";
var path = "image.png";
var body = message.Body = new TextPart("plain")
{
Text = "File Format Developer Guide"
};
// create an image attachment for the file located at path
var attachment = new MimePart("image", "gif")
{
Content = new MimeContent(File.OpenRead(path), ContentEncoding.Default),
ContentDisposition = new ContentDisposition(ContentDisposition.Attachment),
ContentTransferEncoding = ContentEncoding.Base64,
FileName = System.IO.Path.GetFileName(path)
};
// now create the multipart/mixed container to hold the message text and the
// image attachment
var multipart = new Multipart("mixed")
{
body,
attachment
};
// now set the multipart/mixed as the message body
message.Body = multipart;
Criptografar ou descriptografar mensagens com S/MIME
A API Open Source MailKit fornece recursos para criptografar mensagens usando o contexto de criptografia S/MIME. S/MIME usa uma parte MIME application/pkcs7-mime para encapsular o conteúdo criptografado. Crie o corpo da mensagem com o texto da mensagem e alguns anexos de imagem. Depois disso, você pode criptografar o corpo da mensagem usando o contexto de criptografia S/MIME personalizado.