title: How do I load these LINQ results into my ViewModel class?
body: <p>I have a LINQ query which returns results that match up with my <code>PictureGallery</code> class. I need to load them into my <code>ViewModel</code> but im getting the following error:</p>
  
  <blockquote>
    <p>Cannot implicitly convert type
    'System.Linq.IQueryable' to
    'System.Collections.Generic.IEnumerable'.
    An explicit conversion exists (are you missing a cast?)</p>
  </blockquote>
  
  <p>I'm rather new at C#. How do I cast "Results" into my "PictureGallery" viewmddel class?</p>
  
  <p>Thanks in advance!</p>
  
  <p>Controller:</p>
  
  <pre><code>//Test MediaID
  var MediaID = 75;
  
  //Query Results
  var Results = from g in DB.Galleries
                join m in DB.Media on g.GalleryID equals m.GalleryID
                where g.GalleryID == GalleryID
                orderby m.MediaDate descending, m.MediaID descending
                select new { g.GalleryTitle, Media = m };
  
  //Create my viewmodel
  var Model = new GalleryViewModel
  {
      MediaID = MediaID,
      PictureGallery = Results, //This line throws the error.
      PictureCount = Results.Count()
  };
  </code></pre>
  
  <p>ViewModels:</p>
  
  <pre><code>public class GalleryViewModel
  {
      public int? MediaID { get; set; }
      public IEnumerable&lt;PictureGallery&gt; PictureGallery { get; set; }
      public int PictureCount { get; set; }
  }
  
  public class PictureGallery
  {
      public int GalleryID { get; set; }
      public string GalleryTitle { get; set; }
      public int MediaID { get; set; }
      public string MediaTitle { get; set; }
      public string MediaDesc { get; set; }
      public double Rating { get; set; }
      public int Views { get; set; }
  }
  </code></pre>