首页 文章

System.Collections.Generic.IEnumerable ' does not contain any definition for ' ToList'

提问于
浏览
60

这是问题所在 . 我从ViewPage获得IEnumerable,当我尝试转换List时,它显示的错误如下:

'System.Collections.Generic.IEnumerable <Pax_Detail>'不包含'ToList'的定义,也没有扩展方法'ToList'接受类型'System.Collections.Generic.IEnumerable <Pax_Detail>'的第一个参数(您是否缺少using指令或程序集引用?)

这是我的控制器代码:

[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();
}

我在另一个控制器上应用了相同的逻辑 . 它工作正常 . 我不知道它有什么问题 . 我已经清理,重建项目,并重新启动我的笔记本电脑(虽然它是必要的) .

4 回答

  • 3

    你错过了 System.Linq 的using指令吗?

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

  • 7

    您缺少对System.Linq的引用 .

    using System.Linq
    

    访问当前代码文件上的ToList()函数 .


    为了提供一些有关为什么需要这些信息的信息, Enumerable.ToList<TSource> 是一种扩展方法 . 扩展方法在其所针对的原始类之外定义 . 在这种情况下,扩展方法在 System.Linq 命名空间中定义 .

  • 171

    添加LINQ的另一种方法是使用此代码:

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

    我缺少System.Data.Entity dll参考,问题解决了

相关问题