mvc3中传值问题,搞了好久没搞清楚

我想做一个查询,所以做了如下操作:

1、在cshtml页面里

@using (Html.BeginForm("Index", "TPara", FormMethod.Post))
{
<input name="key" type="text" value="b" /><input type="submit" value="查询" />
}

2、在控制器TPara里,新建操作Index,增加属性[HttpPost]

然后通过string key = HttpContext.Request.QueryString["key"].ToString();获取页面中key的值,为何获取不了呢

怎样获取才是正确的呢?

慕侠2389804
浏览 432回答 2
2回答

慕桂英3389331

你这个是Post传递的表单,是用Form存储传递的,最简单的你可以在控制器的TPara方法的形参里加上FormCollection或者直接写上string key就可以得到的,TPara方法应当标注[HttpPost],程序可以自动从Form中获取相应名字的值;QueryString是通过Get方式传递的值,也就是URL的问号后面的部分,在MVC中就是定义在RouteData中的参数

一只萌萌小番薯

HttpContext.Request.Form
打开App,查看更多内容
随时随地看视频慕课网APP