asp.net 为什么窗体不使用我的控制器中的方法?

m1m5dgzv  于 2023-01-06  发布在  .NET
关注(0)|答案(2)|浏览(172)

此表单改为使用"我的控制器中的验证功能转到子页面/帐户/验证表单:

@using (Html.BeginForm("Verify", "Account", FormMethod.Post))
            {
                <span>Enter Your Email:</span>@Html.TextBoxFor(m=>m.Name)<br />
                <span>Enter Your Password:</span>@Html.TextBoxFor(m=>m.Password)<br />
                <input id="Submit" type="submit" value="submit" />
            }

方法:

[HttpPost] public ActionResult Verify(Account acc)
        {
            connectionString();
            con.Open();
            com.Connection = con;
            com.CommandText = "select * from Users where Name = '"+acc.Name+"' and password = '"+acc.Password+"'";
            dr = com.ExecuteReader();
            if (dr.Read())
            {
                con.Close();
                return View("Home");
            }
            else {
                con.Close();
                return View("Privacy"); 
            }

编辑:添加图片,以便控制器及其位置可见

我觉得我试过了所有的方法但我不知道该怎么做
我希望表单继续并被重定向到我所指出的子页面之一

n53p2ov0

n53p2ov01#

请尝试在控制器中标记您的HttpMethod。例如:

[HttpPost("Verify")] 
public ActionResult Verify(Account acc)

同样在浏览器中,请打开开发者工具窗口(F12或右键单击并检查将足以。)然后转到网络选项卡。您可以看到那里的网络请求。只需继续监视网络包,并按下表单提交按钮,然后验证您的端点是否正确。

lnxxn5zx

lnxxn5zx2#

它终于起作用了,这就应该是这样的:
第一个月
所以基本上首先是方法名,然后是控制器名,但是我确信我已经尝试过几次了,但是以前没有成功。

相关问题