none
Anexo no corpo do e-mail RRS feed

  • Pergunta

  • Eu tenho um código C# em Asp.NET 4.5 do Visual Studio 2012 que envia e-mail com anexo.

    Porem o meu cliente quer receber o anexo no corpo do e-mail.

    Como eu faria isso ?

    MemoryStream MS = new MemoryStream(FileUpLoad1.FileBytes);
    Attachment anexo = new Attachment(MS,FileUpLoad1.FileName);   
    mailMessage.Attachments.Add(anexo);

    Quem puder me ajudar eu agradeço muito.

    Fico no aguardo.


    terça-feira, 4 de agosto de 2015 11:46

Respostas

  • Olá.

    Para anexar arquivos você deverá primeiro gravar o arquivo fisicamente no seu servidor.

    Depois você pode colocar o caminho onde gravou no sevidor e passar no mailMessage.Attachments.Add(anexo);

    Então dá uma procurada primeiro em como gravar o FileUpload fisicamente no server ok ?

    Abs, e bons códigos.


    Att, Lucio Rogerio


    Espero ter ajudado, se ajudei, por favor Vote como Útil, e se resolvi seu problema, clique em Marcar como Resposta.

    • Sugerido como Resposta Mr. GMSOFT terça-feira, 4 de agosto de 2015 14:18
    • Marcado como Resposta Marcos SJ sexta-feira, 7 de agosto de 2015 20:14
    terça-feira, 4 de agosto de 2015 13:27

Todas as Respostas

  • Como enviar e-mail usando o meu FileUpload ?

    Meu codigo esta abaixo, mas não consigo enviar o anexo.

    O que esta faltando no meu codigo ?

     protected void UploadBtn_Click(object remetente, EventArgs e)
            {
                if (FileUpLoad1.HasFile)
                {
                    FileUpLoad1.SaveAs(@"C:\temp\" + FileUpLoad1.FileName);
                    Label1.Text = " Arquivo  Carregado :  " + FileUpLoad1.FileName;
                }
                else
                {
                    Label1.Text = "Nenhum  Arquivo  Carregado.";
                }

            }
            
            
            static bool EnviarEmail(string assunto, string destinatario, string mensagem)
            {
                try
                {

                    MailMessage mailMessage = new MailMessage();
                    //Endereço que irá aparecer no e-mail do usuário 
                    mailMessage.From = new MailAddress("assinaturas@artsim.com.br", "Teste Mailing 1");
                    //destinatarios do e-mail, para incluir mais de um basta separar por ponto e virgula///
                    mailMessage.To.Add(destinatario);
                    mailMessage.Subject = assunto;
                    mailMessage.IsBodyHtml = true;
                    //conteudo do corpo do e-mail 
                    mailMessage.Body = mensagem;
                    mailMessage.Priority = MailPriority.High;
                    //smtp do e-mail que irá enviar 
                    SmtpClient smtpClient = new SmtpClient("smtp.artsim.com.br");
                    smtpClient.EnableSsl = false;
                    //credenciais da conta que utilizará para enviar o e-mail 
                    smtpClient.Credentials = new NetworkCredential("assinaturas=artsim.com.br", "simartA117");
                    smtpClient.Port = 587;

                    // Anexa o arquivo do FileUpload ????
                    
                    smtpClient.Send(mailMessage);
                    return true;
                }
                catch
                {
                    return false;
                }
            }


            protected void btnEnviarEmail_Click(object sender, EventArgs e)
            {
                //string email = "";
                //foreach (GridViewRow item in gwDados.Rows)
                //{
                //    //Indice do campo e-mail
                //    //email = item.Cells[2].Text;
                //    //

                //}
                EnviarEmail("ASSUNTO TESTE SGSIM", "paulo@artsim.com.br", "Corpo da Mensagem TESTE SGSIM - Se receber esse e-mail favor confirmar");

            }

    • Mesclado Marcos SJ segunda-feira, 3 de agosto de 2015 14:00 Thread duplicada
    segunda-feira, 3 de agosto de 2015 08:52
  • Meu código c# a baixo carrega o caminho do meu arquivo html.

    Como eu faço para mostrar esse arquivo na pagina usando algum controle ou no textbox mesmo.

    protected void UploadBtn_Click(object remetente, EventArgs e)
            {
                if (FileUpLoad1.HasFile)
                {
                    FileUpLoad1.SaveAs(@"C:\temp\" + FileUpLoad1.FileName);
                    Label1.Text = " Arquivo  Carregado :  " + FileUpLoad1.FileName;
                }
                else
                {
                    Label1.Text = "Nenhum  Arquivo  Carregado.";
                }

            }

    Fico no aguardo

    Obrigado


    • Mesclado Marcos SJ terça-feira, 4 de agosto de 2015 13:46 Thread duplicada
    segunda-feira, 3 de agosto de 2015 13:07
  • Meu código c# a baixo carrega o caminho do meu arquivo html.

    Como eu faço para mostrar esse arquivo na pagina usando algum controle ou no textbox mesmo.

    protected void UploadBtn_Click(object remetente, EventArgs e)
            {
                if (FileUpLoad1.HasFile)
                {
                    FileUpLoad1.SaveAs(@"C:\temp\" + FileUpLoad1.FileName);
                    Label1.Text = " Arquivo  Carregado :  " + FileUpLoad1.FileName;
                }
                else
                {
                    Label1.Text = "Nenhum  Arquivo  Carregado.";
                }

            }

    Fico no aguardo

    Obrigado

    • Mesclado Marcos SJ terça-feira, 4 de agosto de 2015 13:40 Thread duplicada
    segunda-feira, 3 de agosto de 2015 16:14
  • Boa tarde Paulo,

    Por gentileza verifique as informações nos links abaixo:

    Link 01

    Link 02

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    segunda-feira, 3 de agosto de 2015 16:25
  • Meu código c# a baixo carrega o caminho do meu arquivo html.

    Como eu faço para mostrar esse arquivo na pagina usando algum controle ou no textbox mesmo.

    protected void UploadBtn_Click(object remetente, EventArgs e)
            {
                if (FileUpLoad1.HasFile)
                {
                    FileUpLoad1.SaveAs(@"C:\temp\" + FileUpLoad1.FileName);
                    Label1.Text = " Arquivo  Carregado :  " + FileUpLoad1.FileName;
                }
                else
                {
                    Label1.Text = "Nenhum  Arquivo  Carregado.";
                }

            }

    Fico no aguardo

    Obrigado

    • Mesclado Marcos SJ terça-feira, 4 de agosto de 2015 13:43 Thread duplicada
    segunda-feira, 3 de agosto de 2015 17:22
  • Como exibir meu arquivo anexo que eu carrego pelo FileUpload1 no Textbox.Text ou ou controle do Asp.Net ?

    Segue meu código que eu anexo o arquivo.

     MemoryStream MS = new MemoryStream(FileUpLoadHTML.FileBytes);
     Attachment anexo = new Attachment(MS,FileUpLoadHTML.FileName);   
     mailMessage.Attachments.Add(anexo);

    Muito obrigado pela ajuda.

    • Mesclado Marcos SJ terça-feira, 4 de agosto de 2015 13:59 Thread duplicada
    terça-feira, 4 de agosto de 2015 12:41
  • Você pode enviar no corpo do E-mail mais se não me engano somente se for HTML, se contiver imagens as mesmas devem estar hospedadas em algum link externo

    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    terça-feira, 4 de agosto de 2015 13:11
  • Bom dia pr_tecnologia,

    Tudo bem?

    Peço que você verifique as informações destes links:

    Link 01

    Link 02

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 4 de agosto de 2015 13:14
  • Bom dia pr_tecnologia,

    Sua dúvida desta thread é a mesma desta outra thread que você abriu?

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 4 de agosto de 2015 13:35
  • Por motivo de duplicação e thread estou mesclando as várias threads que você abriu sobre o mesmo assunto. Peço que ao abrir uma thread, você aguarde a resposta dos usuários e não abra outras threads continuamente. Obrigado.

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.



    • Editado Marcos SJ terça-feira, 4 de agosto de 2015 13:46
    terça-feira, 4 de agosto de 2015 13:38
  • Obrigado por responder Mr. GMSOFT

    Sim só contem HTML

    Tentei dessa forma mas não deu certo

    MemoryStream MS = new MemoryStream(FileUpLoad1.FileBytes);
    Attachment anexo = new Attachment(MS,FileUpLoad1.FileName);   
    mailMessage.Attachments.Add(anexo);
    mailMessage.Body = anexo.ToString();

    terça-feira, 4 de agosto de 2015 14:13