Asp.net mvc 具有相同签名的ASP.NET MVC 1.0控制器操作

Asp.net mvc 具有相同签名的ASP.NET MVC 1.0控制器操作,asp.net-mvc,Asp.net Mvc,因此,基本上在我的UserController.cs类中,我有一个Index方法,它返回ActionResult以向用户显示仪表板。此页面上有一个html按钮,其类型为submit。当我点击这个按钮时,我想在服务器端捕获它,让用户注销 既然我没有将信息传回,并且方法签名最终是相同的,那么我该怎么做呢 谢谢 迈克 使用: 或 正如您所知,在C#中,同一个类中不能有两个具有相同名称和相同参数的方法。您可以添加一些伪参数,或者我建议您将第二个操作重命名为SignOut,这在语义上更正确,更能反映此操作

因此,基本上在我的UserController.cs类中,我有一个Index方法,它返回ActionResult以向用户显示仪表板。此页面上有一个html按钮,其类型为submit。当我点击这个按钮时,我想在服务器端捕获它,让用户注销

既然我没有将信息传回,并且方法签名最终是相同的,那么我该怎么做呢

谢谢

迈克

使用:

正如您所知,在C#中,同一个类中不能有两个具有相同名称和相同参数的方法。您可以添加一些伪参数,或者我建议您将第二个操作重命名为
SignOut
,这在语义上更正确,更能反映此操作的实际功能。

使用:

    [Authorize]
    public ActionResult Index()
    {
        return View();
    }

    [Authorize]
    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Index()
    {
        FormsAuthentication.SignOut();
        return RedirectToAction("Index", "Home");
    }
[Authorize]
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Index(FormCollection values)
{
    FormsAuthentication.SignOut();
    return RedirectToAction("Index", "Home");
}
[Authorize]
[AcceptVerbs(HttpVerbs.Post), ActionName("Post")]
public ActionResult IndexPost()
{
    FormsAuthentication.SignOut();
    return RedirectToAction("Index", "Home");
}
[AcceptVerbs(HttpVerbs.Get), ActionName("Index"), Authorize]
public ActionResult IndexGet()
{
    return View();
}

[AcceptVerbs(HttpVerbs.Post), ActionName("Index"), Authorize]
public ActionResult IndexPost()
{
    FormsAuthentication.SignOut();
    return RedirectToAction("Index", "Home");
}