C# -- should we should cast for get in Indexer Method
<pre><code>public class PeopleCollection : IEnumerable
{
    private Dictionary&lt;string, Person&gt; listPeople = new Dictionary&lt;string, Person&gt;();

    // This indexer returns a person based on a string index.
    public Person this[string name]
    {
        get { 
            return (Person)listPeople[name]; // **Is this cast necessary?**
        }
        set { 
            listPeople[name] = value; 
        }
    }
    ..
}
</code></pre>

<p>Question: should we cast the return value from <code>listPeople[name]</code> to <code>Person</code>?</p>

<p>Thank you</p>
