none
Enviar mail y crear un PDF file - Lenguaje C# RRS feed

  • Pregunta

  • Hola foro,

     Tengo dos puntos de los cuales necesito su ayuda:

     Estoy haciendo un programa que por medio de una interfaz grafica el cliente llene campos y eliga drop downs values pero que por atras este dando los parametros para que se genere un archivo PDF. 

    Punto uno - Como hago para generar un PDF file por medio de codigo c sharp en mi programa? Yo ya tengo la forma del pdf, solo quiero que ciertos campos sean llenados de forma online en mi programa

    Punto dos - Una vez que se genere el PDF quiero que se envie un mail a casillas de correo previamente agregadas (las cuales yo administro), dependiendo lo que quiera el cliente a la casilla que lo manda pero el jamas elige la casilla, con el PDF del cliente y que el Sender sea una casilla de correo que yo tambien maneje pero que el mail venga en nombre del cliente.

    Ambos puntos son posibles ?

    Gracias por su ayuda !

    Jonathan

    viernes, 28 de febrero de 2014 21:48

Todas las respuestas

  • Para generar el PDF, no hay nada incluido en las librerías de .NET. Tendrás que recurrir a alguna librería de terceras partes. Hay muchas; una muy conocida es iTextSharp ( http://itextsharp.sourceforge.net/ ). Otra alternativa es instalar una impresora virtual que imprima en PDF, y desde tu programa mandar imprimir el formulario en esa impresora "ficticia", que en realidad lo que hace es salvar un fichero. Y otra alternativa es usar una herramienta de reportes tal como SQL Server Reporting Services, definir el formulario en esa herramienta, y usar sus mecanismos de exportación para enviarlo a PDF. También puedes usar el Word, empleando COM/Interop para enviar el texto al Word y luego hacerle salvar como PDF. Como ves, hay muchas alternativas, pero todas ellas implican recurrir a algún componente externo a C#.

    En cuanto a lo de enviar correo, aquí sí que existe todo lo necesario dentro de las librerías del Framework. Las clases necesarias se encuentran dentro del espacio de nombre System.Net.Mail. Puedes instanciar un objeto MailMessage que representa el mensaje y configurarlo como quieras en cuanto a remitente y destinatario. Y luego ese mensaje lo envías mediante la clase MailClient.

    http://msdn.microsoft.com/en-us/library/system.net.mail.smtpclient(v=vs.110).aspx

    sábado, 1 de marzo de 2014 8:39