首页 > 解决方案 > 如何从 .cshtml 页面中的按钮调用控制器中的函数?

问题描述

我正在尝试创建用于管理目的的仪表板/图形界面。如何创建从控制器调用某些功能的按钮?它在 ASP.NET CORE 3 中,使用 MVC 模式。

我想在应用程序中做的是通过从我的 Index.cshtml 页面调用方法并传递参数来执行 c# 代码。

我尝试了多种解决方案,即那些声明视图和控制器与寻找“同名”视图的控制器功能同步但它不起作用的解决方案。

编辑:找到解决方案:我需要同时指定控制器和 ActionResult。

<form action="Home/Change" method="post">
            <input type="text" name="DoorID" placeholder="Guid.." />
            <br />
            <input type="submit" value="Post" />
        </form>

我显然不够聪明,无法阅读无数的教程。谢谢您的帮助!

标签: c#asp.net-mvc.net-coreviewcontroller

解决方案


如果您想在单击按钮后向服务器发送一条数据,您应该在您的视图中创建一个表单并在您的控制器中创建一个发布操作。但是,如果您不想发布任何数据并且只想在单击按钮后做一些事情,请在控制器中创建一个 get 操作并使用按钮单击事件导航到该操作路径。最后,您可以在您的操作中返回相同的页面并事先做您想做的事情。[httpGet("path")]在控制器中的任何公共函数之上使用属性将其标记为操作。然后你可以使用类似这样的东西在 HTML 中调用它<a asp-action="path">sth</a>


推荐阅读