如何在ASP.NET MVC中创建新的ActionResult?

时间:2016-01-08 16:33:57

标签: asp.net-mvc asp.net-mvc-routing actionresult

如果我的MVC控制器使用类似的东西,

public ActionResult Index()
{

return View();
}

public ActionResult Display()
{

return View();
}

当我运行这样的东西时,它似乎无法识别“显示”的动作,假设我在剃刀中使用动作链接,例如,

@Html.ActionLink("Display", "Display")

出于什么原因,当我点击动作链接时,这不会导致我创建的新动作结果“显示”。这样做的正确方法是什么?我是否需要一个单独的控制器来执行此新操作?

1 个答案:

答案 0 :(得分:0)

对于你的例子:

@Html.ActionLink("Display", "Display")

第一个参数是你的linkText,第二个参数是actionName。你真的应该为你的controllerName添加第三个参数。所以,例如,这个:

@Html.ActionLink("Display", "Display", "Home")

意味着"显示"显示为链接文本,链接将导航到HomeController并根据需要调用Display操作方法。

在上面的示例中,生成的HTML源代码如下所示:

<a href="/Display">Display</a>

(&#34; / Home&#34;未显示,因为根据默认路由配置暗示为顶级)

清除?