title: In a LINQ query, when calling ToDictionary, what is assigned the key and value?
body: <pre><code>var products =
  (
      from p in products
      where !p.parentID.HasValue
      select new ProductList
      {
          Name = p.Name,
          Id = p.ID,
          IsInStock = products.Any(...)
      }           
  )
  .ToArray();
  </code></pre>
  
  <p>I want to call <code>ToDictionary()</code> and have the Id as the Key, and IsInStock as the value.</p>
  
  <p>Is this possible?</p>