System.Collections.Generic.IEnumerable’ bevat geen definitie voor ‘ToList’

Dit is het probleem. Ik krijg IEnumerable van ViewPage en toen ik het probeerde om List te converteren, werd er een fout weergegeven zoals:

System.Collections.Generic.IEnumerable<Pax_Detail>‘ bevat geen
een definitie voor ‘ToList’ en geen extensiemethode ‘ToList’ die a . accepteert
eerste argument van het type
System.Collections.Generic.IEnumerable<Pax_Detail>‘ kan worden gevonden
(mis je een gebruiksrichtlijn of een assembly-referentie?)

Hier is mijn controllercode:

[HttpPost]
public ActionResult Edit_Booking(Booking model, IEnumerable<Pax_Detail> pax)
{
  List<Pax_Detail> paxList = new List<Pax_Detail>();
  paxList = pax.ToList(); //getting error here
  BookingDL.Update_Booking(model, paxList);
  return View();
}

Ik heb dezelfde logica toegepast op een andere controller. En het werkt prima. Ik weet niet welk probleem het heeft. Ik heb het project al opgeschoond, opnieuw opgebouwd en ook mijn laptop opnieuw opgestart (hoewel dat nodig was).


Antwoord 1, autoriteit 100%

Mis je een gebruiksinstructie voor System.Linq?

http://msdn.microsoft.com/en-us/library/ bb342261.aspx


Antwoord 2, autoriteit 13%

Je mist een verwijzing naar System.Linq.

Toevoegen

using System.Linq

om toegang te krijgen tot de ToList()-functie van het huidige codebestand.


Om een ​​beetje informatie te geven over waarom dit nodig is, is Enumerable.ToList<TSource>een uitbreidingsmethode. Uitbreidingsmethoden worden gedefinieerd buiten de oorspronkelijke klasse waarop deze is gericht. In dit geval wordt de extensiemethode gedefinieerd in de System.Linqnaamruimte.


Antwoord 3, autoriteit 3%

Een alternatief voor het toevoegen van LINQ is om in plaats daarvan deze code te gebruiken:

List<Pax_Detail> paxList = new List<Pax_Detail>(pax);

Antwoord 4, autoriteit 2%

Ik miste de System.Data.Entity dll-referentie en het probleem is opgelost


Antwoord 5

In mijn geval had ik wat code gekopieerd van een ander project dat Automapper gebruikte – het kostte me eeuwen om die uit te werken. Moest gewoon automapper nuget-pakket toevoegen aan project.

Other episodes