Así que estoy usando el filestream dentro xmlreader
Por qué filestream no cierra por xmlreader
using (XmlReader reader = XmlReader.Create(new FileStream(archivePath, FileMode.Open), readerSettings))
{
reader.close()
}
Sin embargo, la alimentación de archivo en el xmlreader todavía en el estado de bloqueo después de que el uso de alcance, extraño, Me vestuario del xmlreader
va para cerrar la cadena de archivos para mí, ¿no es así?
Gracias por la ayuda.
para ser honesto, no. Pensé que XmlReader es como StreamReader, cerrará la transmisión interna una vez hecho. usar dos instrucciones de uso es un poco torpe. –
anecdótico, pero la mayoría de los ejemplos que veo utilizan los dos 'using'. –
@TOMMYWANG: Bueno, puedes pensarlo, pero no puedo encontrar ningún lugar en el código (usando el reflector) donde 'XmlTextReaderImpl' (que es lo que' XmlReader.Create() 'realmente devuelve) elimina la transmisión. Si cierra la transmisión, se producirán problemas al usar una secuencia para múltiples lectores (¿qué pasa si quiero mantener la transmisión activa? ¿Por qué el lector debe decidir que no puedo?), Por lo que se necesita un enfoque seguro para hacer nada. No estoy de acuerdo con que sea "torpe", pero "torpe" es mejor que "roto". –