title: Cannot load JSON on Table w/ RestSharp
body: <p>I am trying to load all the captions from the pictures on my Instagram Feed onto a Table using RestSharp and Xamarin.iOS, however whenever I try to run my code I always get this error:</p>
  
  <p><img src="https://i.stack.imgur.com/ezQnY.png" alt="The Actual Error"></p>
  
  <p>Here is how I am attempting to load the code here is my request:</p>
  
  <pre><code>var instagramAccessToken = instagram.Properties["access_token"].ToString();
  
          var client = new RestClient ("https://api.instagram.com/v1/");
  
          var request = new RestRequest("users/self/feed", Method.GET);
          request.AddParameter("access_token", instagramAccessToken);
          client.ExecuteAsync&lt;List&lt;RootObject&gt;&gt; (request, response =&gt; {
              // do work on UI thread
              Console.WriteLine(response.Content);
              InvokeOnMainThread(delegate {
                  // pass the data to the TableSource class
                  ((TableSource&lt;RootObject&gt;)table.Source).Data = response.Data;
  
                  // make the TableView reload the data
                  table.ReloadData();
              });
          });
  </code></pre>
  
  <p>I have confirmed that there is a working Access Token and that a working JSON string is returning. Here is the JSON object class that I have created for the Instagram Pictures:</p>
  
  <pre><code>public class InstaPic
      {
          Caption cap = new Caption();
          Pagination pag;
          Meta met;
  
          public override string ToString()
          {
              return cap.text;
          }
      }
  
  public class Pagination
  {
      public string next_url { get; set; }
      public string next_max_id { get; set; }
  }
  
  public class Meta
  {
      public int code { get; set; }
  }
  
  public class Location
  {
      public double latitude { get; set; }
      public double longitude { get; set; }
      public string name { get; set; }
      public int? id { get; set; }
  }
  
  public class Comments
  {
      public int count { get; set; }
      public List&lt;object&gt; data { get; set; }
  }
  
  public class Datum2
  {
      public string username { get; set; }
      public string profile_picture { get; set; }
      public string id { get; set; }
      public string full_name { get; set; }
  }
  
  public class Likes
  {
      public int count { get; set; }
      public List&lt;Datum2&gt; data { get; set; }
  }
  
  public class LowResolution
  {
      public string url { get; set; }
      public int width { get; set; }
      public int height { get; set; }
  }
  
  public class Thumbnail
  {
      public string url { get; set; }
      public int width { get; set; }
      public int height { get; set; }
  }
  
  public class StandardResolution
  {
      public string url { get; set; }
      public int width { get; set; }
      public int height { get; set; }
  }
  
  public class Images
  {
      public LowResolution low_resolution { get; set; }
      public Thumbnail thumbnail { get; set; }
      public StandardResolution standard_resolution { get; set; }
  }
  
  public class From
  {
      public string username { get; set; }
      public string profile_picture { get; set; }
      public string id { get; set; }
      public string full_name { get; set; }
  }
  
  public class Caption
  {
      public string created_time { get; set; }
      public string text { get; set; }
      public From from { get; set; }
      public string id { get; set; }
  }
  
  public class User
  {
      public string username { get; set; }
      public string website { get; set; }
      public string profile_picture { get; set; }
      public string full_name { get; set; }
      public string bio { get; set; }
      public string id { get; set; }
  }
  
  public class LowResolution2
  {
      public string url { get; set; }
      public int width { get; set; }
      public int height { get; set; }
  }
  
  public class StandardResolution2
  {
      public string url { get; set; }
      public int width { get; set; }
      public int height { get; set; }
  }
  
  public class Videos
  {
      public LowResolution2 low_resolution { get; set; }
      public StandardResolution2 standard_resolution { get; set; }
  }
  
  public class Datum
  {
      public object attribution { get; set; }
      public List&lt;object&gt; tags { get; set; }
      public string type { get; set; }
      public Location location { get; set; }
      public Comments comments { get; set; }
      public string filter { get; set; }
      public string created_time { get; set; }
      public string link { get; set; }
      public Likes likes { get; set; }
      public Images images { get; set; }
      public List&lt;object&gt; users_in_photo { get; set; }
      public Caption caption { get; set; }
      public bool user_has_liked { get; set; }
      public string id { get; set; }
      public User user { get; set; }
      public Videos videos { get; set; }
  }
  
  public class RootObject
  {
      public Pagination pagination { get; set; }
      public Meta meta { get; set; }
      public List&lt;Datum&gt; data { get; set; }
  }
  </code></pre>
  
  <p>And Finally here is the Data Source for My Table View:
      public class TableSource : UITableViewSource 
      {
          public List Data { get; set; }
          protected string cellIdentifier = "TableCell";</p>
  
  <pre><code>    public TableSource ()
      {
          Data = new List&lt;T&gt; ();
      }
  
      public TableSource(List&lt;T&gt; data)
      {
          Data = data;
      }
  
      /// &lt;summary&gt;
      /// Called by the TableView to determine how many cells to create for that particular section.
      /// &lt;/summary&gt;
      public override int RowsInSection (UITableView tableview, int section)
      {
          return 5;
      }
  
      /// &lt;summary&gt;
      /// Called when a row is touched
      /// &lt;/summary&gt;
      public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
      {
          if (OnRowSelected != null) {
              OnRowSelected (this, new RowSelectedEventArgs (tableView, indexPath));
          }
      }
  
      public class RowSelectedEventArgs : EventArgs
      {
          public UITableView tableView { get; set; }
          public NSIndexPath indexPath { get; set; }
  
          public RowSelectedEventArgs(UITableView tableView, NSIndexPath indexPath) : base()
          { 
              this.tableView = tableView;
              this.indexPath = indexPath;
          }
      }
  
      public event EventHandler&lt;RowSelectedEventArgs&gt; OnRowSelected;
  
      /// &lt;summary&gt;
      /// Called by the TableView to get the actual UITableViewCell to render for the particular row
      /// &lt;/summary&gt;
      public override UITableViewCell GetCell (UITableView tableView, MonoTouch.Foundation.NSIndexPath indexPath)
      {
          // request a recycled cell to save memory
          UITableViewCell cell = tableView.DequeueReusableCell (cellIdentifier);
          // if there are no cells to reuse, create a new one
          if (cell == null)
              cell = new UITableViewCell (UITableViewCellStyle.Default, cellIdentifier);
  
          cell.TextLabel.Text = Data[indexPath.Row].ToString();
  
          return cell;
      }
  }
  </code></pre>
  
  <p>Sorry for the overly long question! And thanks before hand for the help!</p>