I’m having a problem with a Windows Form application I’m building in C#. The error is stating “foreach statement cannot operate on variables of type ‘CarBootSale.CarBootSaleList’ because ‘CarBootSale.CarBootSaleList’ does not contain a public definition for ‘GetEnumerator'”.
I can’t seem to understand what is causing this.
This is the code that is throwing up the error:
List<CarBootSaleList> Sortcarboot = new List<CarBootSaleList>(); foreach (CarBootSale c in carBootSaleList) { if (c.Charity == "N/A") { Sortcarboot.Add(carBootSaleList); textReportGenerator.GenerateAllReport(Sortcarboot, AppData.CHARITY); } }
and this is the CarBootSaleList class where it’s saying there isn’t a GetEnumerator definition:
public class CarBootSaleList { private List<CarBootSale> carbootsales; public CarBootSaleList() { carbootsales = new List<CarBootSale>(); } public bool AddCarBootSale(CarBootSale carbootsale) { bool success = true; foreach (CarBootSale cbs in carbootsales) { if (cbs.ID == carbootsale.ID) { success = false; } } if (success) { carbootsales.Add(carbootsale); } return success; } public void DeleteCarBootSale(CarBootSale carbootsale) { carbootsales.Remove(carbootsale); } public int GetListSize() { return carbootsales.Count();