¿Puedes disponer de múltiples objetos dentro de un bloque de uso?

¿Cómo cuidar que se eliminen varios objetos en una declaración de uso?

Código de muestra

using(MyClass obj = new MyClass())
{
    MyOtherClass objOC= new MyOtherClass()
    TextReader objTR = new StringReader(...);  
    // other code
}

MyClass obj se eliminará al final del bloque de uso, pero entonces, ¿qué pasa conMyOtherClass objOC yTextReader objTR. Por lo que sé, no se desecharán, ¿así que debería tener un bloque de Uso anidado allí, como este a continuación? Necesitaré un monitor de pantalla ancha real si aumenta el número de objetos

¿Esto es correcto abajo?

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`
}

MyClass y MyOtherClass ambos implementanIDisposable

Respuestas a la pregunta(2)

Su respuesta a la pregunta