我们可以在ASP.NET MVC应用程序中更改操作方法名称吗?

时间:2016-08-14 17:00:57

标签: c# asp.net-mvc

这是同名控制器中的两个动作方法,我想使用属性更改此动作名称。

[HttpGet] 
public ActionResult Show()
{
    return View();
}

[HttpPost] 
public ActionResult Show(FormCollection frm)
{
    return View();
}

2 个答案:

答案 0 :(得分:9)

您可以使用ActionName属性。

[HttpPost, ActionName("Show")]
public ActionResult PostShow()
{
    // your code...
}

答案 1 :(得分:1)

您可以使用相同的名称,但请确保方法签名不同。为此,您只需在post方法中添加一个参数即可。

[HttpGet] 
public ActionResult Show()
{
    return View();
}

[HttpPost] 
public ActionResult Show(string name)
{
    return View();
}

现在提交Show表单时,名称值为name的输入字段将提交给HttpPost操作方法。