title: eval objects property
body: <p>i have the following two objects</p>
  
  <pre><code>public partial class ProgramObj
  {
    public int id;
    public PersonObj myPerson;
  }
  
  public class PersonObj
  {
     public int id;
     public string full_name;
  }
  </code></pre>
  
  <p>I am assigning a list of ProgramObj's to a repeater from a SqlDataReader</p>
  
  <pre><code>program_list.DataSource = reader;
  program_list.DataBind();
  </code></pre>
  
  <p>What I want to do, is access the full_name property of the PersonObj in each ProgramObj
  I've tried multiple things, the only thing that gets me an output value is </p>
  
  <pre><code>&lt;%# DataBinder.Eval(Container.DataItem, "id") %&gt;
  </code></pre>
  
  <p>which gets me the id of the ProgramObj, but I would like to get the name of the PersonObj, I thought </p>
  
  <pre><code>&lt;%# DataBinder.Eval(Container.DataItem, "myPerson.full_name") %&gt;
  </code></pre>
  
  <p>would work, but it doesn't appear to get me anywhere. </p>
  
  <p>I also tried an ItemDataBound with </p>
  
  <pre><code>PersonObj myPerson = (PersonObj)e.Item.DataItem;
  lblUserName.Text = myPerson.Full_Name_RFL;
  </code></pre>
  
  <p>and</p>
  
  <pre><code>&lt;%# DataBinder.Eval(Container.DataItem, "myPerson") %&gt;
  </code></pre>
  
  <p>but i get an error that it cannot cast an object of type DataRecordInternal to PersonObj. thoughts?</p>