title: How to iterate through JObject Properties via Foreach/LINQ
body: <p>I have an established JObject object. Trying to loop through it to acquire a Key/value based on anothers Key/value (example of json below with code currently stuck on)</p>
  
  <p>For a tad more detail - looking to loop through "value", get the "KeyID" based on "MailState"</p>
  
  <p>definitely feel like I am missing the step of filtering by MailState/ColName apparently - I have searched through threads a bunch but if someone knows of one that answered this that i was unable to find i will happily pull this down/reference it</p>
  
  <pre><code>// JSON DATA
  {
      "odata.metadata": "https://..com/odata/$metadata#JCJMCDXes",
      "value": [
          {
              "KeyID": "10379",
              "MailCity": "Chicago",
              "MailState": "IL"
          },
          {
              "KeyID": "9846",
              "MailCity": "Chicago",
              "MailState": "IL"
          },
          {
              "KeyID": "2234",
              "MailCity": "Madison",
              "MailState": "WI"
          }]
  }
  
  // Current code example
  
  // class in play
  public class datastorage
  {
    public string ID { get; set; }
    public string Col { get; set; }
  }
  
  public class listData
  {
    public string ColName {get;set;}
  }
  
  // getVPData is a string response from a call to an API
  getVPData.Replace(System.Environment.NewLine, "");
  
  JObject jobj = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(getVPData);
  
  List&lt;datastorage&gt; data = new List&lt;datastorage&gt;();
  
  // Loop
  foreach(var r in listData) // has distinct State abeviations so only 1 occurence
  {
  foreach (var j in jobj) // This the right path?
  {
    //add KeyID into ID
    data.add(new datastorage
      {
       ID = ,//add KeyID into ID
       Col = r.ColName
      });
  }
  }
  </code></pre>