我知道这是不对的,但为了说明问题,我想这样做:

<%= Html.Button("Action", "Controller") %>

我的目标是使一个HTML按钮,将调用我的MVC控制器的动作方法。


当前回答

Razor语法如下:

<input type="button" value="Create" onclick="location.href='@Url.Action("Create", "User")'" />

其他回答

这就是如何将表单提交给Razor中的特定控制器和动作方法。

 <input type="submit" value="Upload" onclick="location.href='@Url.Action("ActionName", "ControllerName")'" />

在控制器中实现动作时,使用

return View("Index");

or

return RedirectToAction("Index");

在索引。CSHTML(或生成动作的页面)页面已经定义。否则,您可能会遇到“视图或其主未找到…”错误。

来源:https://blogs.msdn.microsoft.com/aspnetue/2010/09/17/best-practices-for-asp-net-mvc/

Razor语法如下:

<input type="button" value="Create" onclick="location.href='@Url.Action("Create", "User")'" />

最好用这个例子。

使用ActionLink调用动作和控制器:

@Html.ActionLink("Submit", "Action", "Controller", route, new { @class = "btn btn-block"})

根据上面的几个答案,你可以这样做:

<button onclick="location.href='@Url.Action("ActionName", "ControllerName")'" />