title: Cannot convert method group 'ToList' to non-delegate type
body: <p>I'm trying to write a method that generates multiple invoices. This is for a college, where clients are enrolled with tutors in a class called Enrollments. With this method, I am trying to accumulate the monthly fee of the tutors clients multiplied by their commission percentages, as tutors earn a certain commission on the lessons they give. Here is my code for this:</p>
  
  <pre><code>    public ActionResult CreateBulkCommissions()
      {
          var month = DateTime.Now.ToString("MMMM");
  
          var enrolments = db.Enrollments.ToList();
  
          var newCommissions = from enrolment in enrolments
                               select new TutorCommission()
                               {
                                   CommissionAmount = enrolment.MonthlyFee,
                                   CommissionMonth = month,  // string constant 
                                   CommissionStatus = "Unpaid",
                                   Tutor = new Tutor { TutorNoID = enrolment.Tutor.TutorNoID, TutorCommissionPercentage = enrolment.Tutor.TutorCommissionPercentage }
                               };
          foreach (var newCommission in newCommissions)
          {
              List&lt;TutorCommission&gt; TutorComs = newCommissions.GroupBy(g =&gt; g.Tutor).Select(s =&gt; new TutorCommission
              {
                  CommissionAmount = s.Sum(u =&gt; u.CommissionAmount) * s.Key.TutorCommissionPercentage,
                  TutorNoID = s.Key.TutorNoID
  
              }).ToList;
  
              db.TutorCommission.Add(newCommission);
              db.SaveChanges();
          }
  
          return RedirectToAction("Index");
      }
  </code></pre>
  
  <p>On the ToList line, I am receive the error that it convert convert the method group ToList to a non-delegate type. Here are my relevant model classes:</p>
  
  <pre><code>public class Enrollment
  {
      [Key]
      [Display(Name = "Enrollment ID Number")]
      public long EnrollmentIDNumber { get; set; }
      [Display(Name = "Client ID Number")]
      public long ClientNumberID { get; set; }
      [Display(Name = "Tutor ID Number")]
      public long TutorNoID { get; set; }
      [Display(Name = "Course Name")]
      public string CourseName { get; set; }
      [Display(Name = "Lesson Time")]
      public string LessonTime { get; set; }
      [Display(Name = "Lesson Day")]
      public string LessonDay { get; set; }
      [Display(Name = "Lesson Location")]
      public string LessonLocation { get; set; }
      [Display(Name = "Lesson Type")]
      public string LessonType { get; set; }
      [Display(Name = "Lesson Level")]
      public string LessonLevel { get; set; }
      [Display(Name = "Monthly Fee")]
      public long MonthlyFee { get; set; }
  
      public virtual Client Client { get; set; }
      public virtual Tutor Tutor { get; set; }
  
  }
  
  public class TutorCommission
  {
      [Key]
      [Display(Name = "Commission ID")]
      public long CommissionID { get; set; }
      [Display(Name = "Commission Month")]
      public string CommissionMonth {get; set;}
      [Display(Name = "Commission Amount")]
      public double CommissionAmount { get; set; }
      [Display(Name = "Commission Status")]
      public string CommissionStatus { get; set; }
      [Display(Name = "Tutor ID Number")]
      public long TutorNoID { get; set; }
  
      public virtual Tutor Tutor { get; set; }
      public virtual ICollection&lt;CommissionPayments&gt; CommissionPayments { get; set; }
  
  }
  
  public class Tutor
  {
      [Key]
      [Display(Name = "Tutor ID Number")]
      public long TutorNoID { get; set; }
      [Required]
      [StringLength(50, ErrorMessage="First name must be less than 50 characters")]
      [Display(Name = "First Name")]
      public string TutorFirstName { get; set; }
      [StringLength(50, ErrorMessage = "Last name must be less than 50 characters")]
      [Display(Name = "Last Name")]
      public string TutorLastName { get; set; }
      [DisplayFormat(DataFormatString = "{0:d}", ApplyFormatInEditMode = true)]
      [Display(Name = "Birth Date")]
      public DateTime? TutorBirthDate { get; set; }
      [Display(Name = "Cellphone Number")]
      public string TutorCellphoneNumber { get; set; }
      [Display(Name = "Home Number")]
      public string TutorHomeNumber { get; set; }
      [RegularExpression("^[a-z0-9_\\+-]+(\\.[a-z0-9_\\+-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*\\.([a-z]{2,4})$", ErrorMessage = "Not a valid email address")]
      [Display(Name = "Email Address")]
      public string TutorEmailAddress { get; set; }
      [Display(Name = "Street Address")]
      public string TutorStreetAddress { get; set; }
      [Display(Name = "Suburb")]
      public string TutorSuburb { get; set; }
      [Display(Name = "City")]
      public string TutorCity { get; set; }
      [Display(Name = "Postal Code")]
      public string TutorPostalCode { get; set; }
      [Display(Name="Full Name")]
      public string FullName
      {
          get
          {
              return TutorFirstName + " " + TutorLastName;
          }
      }
      [Display(Name="Commission Percentage")]
      [Required]
      public double TutorCommissionPercentage { get; set; }
  
      public virtual ICollection&lt;Enrollment&gt; Enrollments { get; set; }
      public virtual ICollection&lt;TutorCommission&gt; TutorCommissions { get; set; }
  
  }
  </code></pre>
  
  <p>Thanks,
  Amy</p>