我正在开发与mvc应用相关的电影。 我正在尝试搜索电影的名称。
它给出了一个错误:
传递到字典中的模型项是类型的 'System.Data.Objects.ObjectSet
1[MvcMovie.Movie]', but this dictionary requires a model item of type 'System.Collections.Generic.IEnumerable
1 [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);
}
以及View页面的代码
@model IEnumerable<MvcMovie.Models.Movie>
@{
ViewBag.Title = "SearchIndex";
}
答案 0 :(得分:0)
您需要将结果转换为可枚举的类型..例如List:
return View(db.Movies.ToList());
答案 1 :(得分:0)
该错误表明您的Movie
实体的名称空间为MvcMovie
而不是MvcMovie.Models
System.Data.Objects.ObjectSet1[**MvcMovie.Movie**]
更改此
@model IEnumerable<MvcMovie.Models.Movie>
到这个
@model IEnumerable<MvcMovie.Movie>