MVC 返回当前操作结果视图的操作搜索

本文关键字:操作 视图 搜索 结果 MVC 返回 | 更新日期: 2023-09-27 18:21:03

  public ActionResult xyz(int? page)
        {
            return Index(page);
        }

我想做的是xyz返回与索引相同的内容。我只想定义两个实际上相同的网址。我检查它是否试图找到 xyz.cshtml

它看起来不太好。我认为它只会返回索引函数并且它就完成了。这让我很惊讶。如果我直接返回索引函数,有人可以在这里告诉我,然后它如何搜索 xyz.cshtml。

有人请告诉我如何使用 index.cshtml 以及我返回 Index 的方式显示我想要的页面。

Paritosh的回答使返回我想要的页面。 但是现在没有任何东西通过Viewdata和Viewbag传递,这会产生问题。

 public ActionResult Index(int? page)
        {
            int pagenum = page ?? 1, limit = Globals.xyz_PAGE_SIZE;
            int startrow = (pagenum - 1) * limit;
            ViewBag.xyzCount = xyz.xyzget();
            ViewBag.Pagesize = Globals.xyz_PAGE_SIZE;
            ViewBag.xyz= blahblah.xyz(startrow, Globals.xyz_PAGE_SIZE + 1);
            return View();
}

我创建另一个操作的意思是创建两个 URL。 如果我使用路由呢?路由是更好的选择,还是没有好的方法来处理这个麻烦。

MVC 返回当前操作结果视图的操作搜索

您需要在此处传递视图名称

public ActionResult xyz(int? page)
{
    return View("Index",page);
}

如果不传递视图名称,则它将搜索与操作方法同名的视图 - 此处xyz.cshtml。这就是您面临问题的原因

事实上你

有两个选择:

//immediately show the "Index" View
return View("<Path_To_Index_View>", page);

//Redirect to the "Index" Action
return RedirectToAction("Index", page);

选择您需要的那个。