0

我正在开发与 mvc 应用程序相关的电影。我正在尝试搜索电影的名称。

它给出了一个错误:

传入字典的模型项的类型为“System.Data.Objects.ObjectSet 1[MvcMovie.Movie]', but this dictionary requires a model item of type 'System.Collections.Generic.IEnumerable1[MvcMovie.Models.Movie]”。

下面是 Movie 控制器的 searchIndex 方法代码。

   public ActionResult SearchIndex(string searchString)
    {
        var movies = from m in db.Movies select m;

        if (!string.IsNullOrEmpty(searchString))
        {
            movies = movies.Where(s => s.Title.Contains(searchString));

        }

        return View(db.Movies);
  }

以及下面的查看页面代码

@model IEnumerable<MvcMovie.Models.Movie>

@{
ViewBag.Title = "SearchIndex";

}

4

2 回答 2

0

该错误表明您的Movie实体的命名空间MvcMovie不是MvcMovie.Models

System.Data.Objects.ObjectSet1[**MvcMovie.Movie**]

改变这个

@model IEnumerable<MvcMovie.Models.Movie>

对此

@model IEnumerable<MvcMovie.Movie>
于 2012-08-02T12:06:08.743 回答
0

您需要将结果转换为可枚举类型.. 例如 List:

return View(db.Movies.ToList());
于 2012-08-02T11:29:50.117 回答