dictonary requeiers是system.collections.generic.ienumeruble类型的模型项

时间:2016-10-19 12:39:32

标签: c# entity-framework linq

我有一个模型,其中一个字段是TimeInClub 我每group by试图TimeInClub一张桌子 但我收到了错误

  

dictonary requeiers类型为system.collections.generic.ienumeruble的模型项

控制器中的代码是

public class FansController : Controller
{
    private dbFan db = new dbFan();

    public ActionResult Index()
    {
        var group = from f in db.fans
                    group f by f.TimeInClub;

        return View(group);
    }

在我的视图中(我的模型称为Fans,我的db-context称为粉丝)

@model IEnumerable<fan_Club.Models.Fans>

感谢。

1 个答案:

答案 0 :(得分:1)

您得到的错误是因为您返回的类型和@model的类型不同。 GroupBy的结果是IEnumerable<IGrouping<TKey, TSource>>而不是IEnumerable<fan_Club.Models.Fans>。您必须投放到符合@model的类型或更改@model

如果你想在大卫的评论中提到OrderBy那么:

var group = from f in db.fans
            orderby f.TimeInClub 
            select f;

要按降序排序,请添加descending关键字:

orderby f.TimeInClub descending