C# 是否显示统计搜索结果数量的消息?
我正在尝试修改控制器上的搜索,以便它能够计算用户在搜索字符串中键入的匹配结果数。这样,用户将搜索电影名称,并且有1部匹配的电影。消息将显示“1部电影符合您的搜索条件:'终结者'” 到目前为止,这是我的代码,我没有错误,它可以很好地搜索数据,但不计算结果的数量。。如果有人知道我需要做什么才能让搜索显示消息,那将非常有帮助。搜索功能可以工作,但我需要计算数据的匹配数,如果没有结果或有,有多少 谢谢C# 是否显示统计搜索结果数量的消息?,c#,asp.net-mvc-3,razor,C#,Asp.net Mvc 3,Razor,我正在尝试修改控制器上的搜索,以便它能够计算用户在搜索字符串中键入的匹配结果数。这样,用户将搜索电影名称,并且有1部匹配的电影。消息将显示“1部电影符合您的搜索条件:'终结者'” 到目前为止,这是我的代码,我没有错误,它可以很好地搜索数据,但不计算结果的数量。。如果有人知道我需要做什么才能让搜索显示消息,那将非常有帮助。搜索功能可以工作,但我需要计算数据的匹配数,如果没有结果或有,有多少 谢谢 public ViewResult Index(string sortOrder, string se
public ViewResult Index(string sortOrder, string searchString)
{
ViewBag.NamesSortParm = string.IsNullOrEmpty(sortOrder) ? "Name desc" : "";
ViewBag.MoviesSortParm = sortOrder == "MovieID" ? "Name" : "Director";
var Movies = from s in MoviesRepository.GetMovies ()
select s;
if (!string.IsNullOrEmpty(searchString))
{
Movies = Movies.Where(s => s.Name.ToUpper().Contains(searchString.ToUpper())
|| s.Director.ToUpper().Contains(searchString.ToUpper()));
int count = Movies.Count();
if (count == 0)
{
ViewBag.Message = "No matches found";
}
else
{
ViewBag.Message = " Results";
} }
switch (sortOrder)
{
case "Name":
Movies = Shows.OrderByDescending(s => s.Name);
break;
case "Director":
Movies = Movies.OrderByDescending(s => s.Director);
break;
default:
Movies = Movies.OrderBy(s => s.Synopsis);
break;
}
return View(Movies.ToList());
}
我觉得这是个打字错误。替换此行:
ViewBag.Message = " Results";
为此:
ViewBag.Message = count + " Results";
此外,请确保将ViewBag.Message放在视图中的某个位置:
<div> @ViewBag.Message </div>
@ViewBag.Message
好的,谢谢,我试试看,没有即时消息,视图中没有显示viewbag消息,这与控制器中的消息相同吗?我假设我将其放在搜索的div中?在视图中?是的,ViewBag.消息不会自动显示。只需在视图中的某个位置添加@ViewBag.Message或其他内容。