Enlaces patrocinados:

Trucos de ASP NET 2 String to Stream: para enviarlo como Attachment


Intentando enviar un archivo adjunto desde un string, me tope con la incertidumbre de como pasar un cadena (string) a un stream (flujo) ya que el simple casteo me generaba error


Bueno la idea primeramente era enviar un correo adjunto mediante el metodo Add de la coleccion Attachment

_correo.Attachments.Add(New Attachment(strmMemory, "Recordatorio.htm", "text/html"))

pero necesitaba un stream (flujo) y solo tenia el contenido en cadena, y no podia, hasta que llego la
System.IO.MemoryStream

(...)La clase MemoryStream crea secuencias que utilizan como almacén de respaldo la memoria en lugar de un disco o una conexión de red. MemoryStream encapsula los datos almacenados como una matriz de bytes sin signo que se inicializa al crear un objeto MemoryStream; también se puede crear una matriz vacía. Es posible obtener acceso directamente a los datos encapsulados en la memoria. Las secuencias de memoria pueden reducir la necesidad de archivos y búferes temporales en una aplicación.(...)


El ejemplo es algo asi:


Private _correo As New System.Net.Mail.MailMessage


'...varias lineas de código despues...


Dim uniEnco As New UnicodeEncoding
Dim aBytes As Byte() = uniEnco.GetBytes(_correoContenido.Cuerpo)
Dim strmMemory As New MemoryStream(aBytes)

_correo.Attachments.Add(New Attachment(strmMemory, "Recordatorio.htm", "text/html"))


y luego me dedique a predicarlo jeje! posteando más a modo de recordartorio y para el que lo necesite algunas vez.


Comentarios sobre String to Stream: para enviarlo como Attachment


Fernando dice:

No sale, cargo un String en la linea Dim aBytes As Byte() = uniEnco.GetBytes(miCadenaString) y no acepta el dato, el parametro tiene una firma CHAr no string
Comentario publicado 27/04/2010 15:47:00
Dejar un comentario

Nombre:

Mail:

Web:

Comentario:

Código de seguridad

Captcha

Inserta el código de seguridad