¿Cómo cuidar la eliminación de varios objetos en una instrucción Using?¿Puede deshacerse de varios objetos dentro de un bloque de Uso?
Código de ejemplo
using(MyClass obj = new MyClass())
{
MyOtherClass objOC= new MyOtherClass()
TextReader objTR = new StringReader(...);
// other code
}
MyClass obj
se puede disponer en el extremo del bloque de Uso, pero luego lo sobre MyOtherClass objOC
y TextReader objTR
. Por lo que yo sé, no se eliminarán, así que ¿debería tener un bloque de uso anidado allí, como este a continuación? Voy a necesitar un monitor de pantalla ancha real si aumenta el número de objetos
¿Es esto correcto a continuación?
using(MyClass obj = new MyClass())
{
using (MyOtherClass objOC= new MyOtherClass())
{
using (TextReader objTR = new StringReader(...))
{
//code using all three objects
}
}
// other code using just `MyClass obj`
}
MiClase & MyOtherClass ambas aplicar IDisposable
relacionado: [anidada utilizando declaraciones en C#] (http://stackoverflow.com/questions/1329739/nested-using-statements-inc-c-sharp) –