+8 votos
60 visitas

Existe uma tabela que possui um campo do tipo ARQUIVO (Benner.Tecnologia.Common.FileField no BEF).

Como envio o arquivo armazenado nesse campo como anexo de um e-mail utilizando da API de Benner.Tecnologia.Business.MailMessage?

 

por (224 pontos) | 60 visitas

1 Resposta

+6 votos
Melhor resposta

Utilize o seguinte procedimento:

  • Salve o conteúdo do campo em um arquivo temporário
  • Anexe o arquivo temporário ao e-mail
  • Envie o e-mail
  • Apague o arquivo temporário

Código de exemplo:

string anexo = null;

if (entidade.CampoArquivo != null && entidade.CampoArquivo.Name.IsNotNullOrEmpty())
{
    anexo = Path.GetTempPath() + Anexo.Name;
    File.Delete(anexo);

    using (FileStream fileStream = new FileStream(anexo, FileMode.Append))
    {
        entidade.CampoArquivo.Content.CopyTo(fileStream);
        fileStream.Flush();
    }
}

// Envio do e-mail usando Benner.Tecnologia.Business.MailMessage

if (anexo != null)
    File.Delete(anexo);

 

por (109 pontos)
selecionada por

Perguntas relacionadas

Melhores May 2020
  1. henrique.muller

    18 Pontos

  2. joao.melo

    14 Pontos

  3. joseglauber

    11 Pontos

  4. SlimShady

    7 Pontos

  5. willian.metalsystem

    6 Pontos

  6. lucas.melo

    3 Pontos

  7. fluipress.luciano

    2 Pontos

  8. pajucara.wallacef

    2 Pontos

  9. jean.filho

    2 Pontos

  10. maicon.pereira

    2 Pontos

200 pontos
Melhores 2020 May 25 - 31
    433 perguntas
    476 respostas
    346 comentários
    466 usuários