Example #1
0
        public void Test1()
        {
            BaseResource aStream = new DerivedResource();

            aStream.Close(); // Allowed
            // aStream.Dispose(); // Cannot compile

            ((IDisposable)aStream).Dispose(); // Allowed

            //
            // This one works as well, because newStream calls the explicit implemented
            // IDisposable.Dispose method
            //
            using (BaseResource newStream = new DerivedResource())
            {
                //
                // Do something
                //
            }
        }
Example #2
0
        public void Test3()
        {
            BaseResource aStream = new DerivedResource();

            aStream.DoSomething();
        }