title: How should I use properties when dealing with read-only List<T> members
body: <p>When I want to make a value type read-only outside of my class I do this:</p>
  
  <pre><code>public class myClassInt
  {
      private int m_i;
      public int i {
          get { return m_i; }
      }
  
      public myClassInt(int i)
      {
          m_i = i;
      }
  }
  </code></pre>
  
  <p>What can I do to make a <code>List&lt;T&gt;</code> type readonly (so they can't add/remove elements to/from it) outside of my class? Now I just declare it public:</p>
  
  <pre><code>public class myClassList
  {
      public List&lt;int&gt; li;
      public  myClassList()
      {
          li = new List&lt;int&gt;();
          li.Add(1);
          li.Add(2);
          li.Add(3);
      }
  }
  </code></pre>