我可以在同一个asp mvc.net控制器上使用GET和POST吗?

我可以在同一个asp mvc.net控制器上使用GET和POST吗?,.net,asp.net-mvc,forms,controller,http-post,.net,Asp.net Mvc,Forms,Controller,Http Post,使用asp.NETMVC,我使用post和get提交表单。在我的控制器中,我只能访问post参数,而不能访问GET参数 这是我的HTML表单: <form name="input" action="/account/Login/?test=123" method="post"> Username: <input type="text" name="username"> Lastname: <input type="text" name="lastname

使用asp.NETMVC,我使用post和get提交表单。在我的控制器中,我只能访问post参数,而不能访问GET参数

这是我的HTML表单:

<form name="input" action="/account/Login/?test=123" method="post">
   Username: <input type="text" name="username">
   Lastname: <input type="text" name="lastname">
   Password: <input type="text" name="password">
<input type="submit" value="Submit">
</form>
我也尝试了我的控制器,但没有用

[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]
    public ActionResult Login(User model, string test)
    {
        // but "test" is also  null
    }

HTTP动词不是这样工作的

GET和POST不是传递数据的两种方式;它们是两种不同类型的HTTP请求。(只有立柱有有效载荷)


您正在请求一个查询字符串参数

但是,浏览器会从表单操作URL中删除查询字符串参数。
HTTP请求根本不包括这一点


相反,你应该把它放在一个

中,你的例子非常适合我。在动作的两个变量中,我得到test=123

或者,您可以尝试使用
Html.BeginForm()
helper:

@using(Html.BeginForm("Account", "Login", new { test = "123" }, FormMethod.Post))
{
   @:Username: <input type="text" name="username"/>
   @:Lastname: <input type="text" name="lastname"/>
   @:Password: <input type="text" name="password"/>
   <input type="submit" value="Submit"/>
}
@使用(Html.BeginForm(“Account”,“Login”,new{test=“123”},FormMethod.Post))
{
@:用户名:
@:姓氏:
@:密码:
}

谢谢你的回答,那么我怎样才能访问用户名、姓氏、密码和测试?我无法通过隐藏测试,我真的需要使用get访问测试method@user2037696:什么意思?发布后用户模型的字段是否正常绑定?如何获得测试?像这样的字符串test=Request.QueryString[“test”]?你能给我看看你的控制器吗?是的,第二种方法(以字符串测试作为第二个参数)对我有效。所以我问你们,你们是否将用户模型和表单中的数据绑定在一起?你们所说的“用户模型和表单中的数据绑定”是什么意思?对不起,我还是个初学者。感谢您的帮助。您可以在字符串test=Request.QueryString[“test”]上设置断点吗;和debug共进午餐。然后在表格中填写输入并提交。当您获得断点时,是否在用户模型内部看到表单中的数据?
@using(Html.BeginForm("Account", "Login", new { test = "123" }, FormMethod.Post))
{
   @:Username: <input type="text" name="username"/>
   @:Lastname: <input type="text" name="lastname"/>
   @:Password: <input type="text" name="password"/>
   <input type="submit" value="Submit"/>
}