在.cshtml页面中传递GET参数mvc 4

时间:2013-01-02 14:27:05

标签: c# asp.net-mvc-4 get

我对mvc很新,我正在为我的网站做一些分页。 我想知道如何从我的网址访问GET参数,所以我可以这样做:

@html.Actionlink("next page", "index", "someController", null, ?searchvalue1=GETPARAM1&searchvalue2=GETPARAM2&page=GETPARAM3 + 1)

网址就像

  

http://www.something.com/controller?searchvalue1=foo&searchvalue2=bar&page=1

这可能还是有解决方法?

提前致谢!

3 个答案:

答案 0 :(得分:3)

使用QueryString,如:

@{
    string searchvalue1= Request.QueryString["searchvalue1"];
    string searchvalue2= Request.QueryString["searchvalue2"];
    string page= Request.QueryString["page"];
}

源: Send and Receive data in .cshtml page

它适用于我,

答案 1 :(得分:2)

你想要的是:

@html.Actionlink("next page", "index", "someController", new { 
  searchvalue1=Request["searchvalue1"],
  searchvalue2=Request["searchvalue2"],
  page=Convert.ToInt32(Request["page"]) + 1
})

作为最后一个参数传递的匿名对象中的属性是GET变量的名称,它们的值是URL中传递的值。

答案 2 :(得分:0)

访问控制器中的值,您需要在控制器操作中添加相应的参数。这是我以前用过的分页动作方法:

public ActionResult Index(int page = 1, string sort = Schools.DefaultSort, string sortDir = SortConstants.Ascending)
{
    // action code goes here
}

希望这有帮助,如果您需要更多,请告诉我。