tengo un método con una corriente de entrada:¿Cómo se puede saber si una transmisión está cerrada?
public void Export(Stream finalOutPutStream)
Para propósitos de prueba, lo llamo con una secuencia de memoria, así:
// When
_exporter.Export(new System.IO.MemoryStream());
Pero cuando, en el método, quiero para escribir en esta secuencia de memoria, obtengo una ObjectDisposedException.
Este flujo no está encerrado en una declaración using, no llamo explícitamente .Dispose().
¿Qué pasó?
Gracias :)
- EDIT: Mi mal, el problema es de la escritora tercero (DotNetZip). La excepción ocurre cuando llamo zip.Save (new MemoryStream()). Haré mis preguntas en su foro. Lo siento, y gracias por la ayuda.
¿Cómo se escribe a la corriente? Si, por ejemplo, envuelve su 'finalOutPutStream' en un' StreamWriter', al cerrar el 'StreamWriter' también se cerrará la transmisión subyacente. –
la excepción ocurre en el momento en que escribo, antes de que el escritor de flujo esté cerrado. ¡Pero gracias, no sabía que la transmisión subyacente también se cerraría! –
¿Obtiene una excepción dentro del método 'Exportar'? –