Accesor de propiedad "Solo lectura" en C #

Tengo la siguiente clase:

class SampleClass
{
   private ArrayList mMyList;

   SampleClass()
   {
       // Initialize mMyList
   }

   public ArrayList MyList
   {
       get { return mMyList;}
   }
}

Quiero que los usuarios puedan obtener mMyList, razón por la cual expuse el "get" a través de una propiedad; sin embargo, no quiero que hagan cambios en el objeto (es decir, MyList.Add (new Class ());) su camino de regreso a mi clase.

Supongo que puedo devolver una copia del objeto, pero eso puede ser lento y estoy buscando una forma que proporcione un error en tiempo de compilación que informe al usuario que no debe esperar poder modificar el valor devuelto de la propiedad

¿Es posible

Respuestas a la pregunta(8)

Su respuesta a la pregunta