Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从.cshtml页面中的按钮调用控制器中的函数?_C#_Asp.net Mvc_.net Core_View_Controller - Fatal编程技术网

C# 如何从.cshtml页面中的按钮调用控制器中的函数?

C# 如何从.cshtml页面中的按钮调用控制器中的函数?,c#,asp.net-mvc,.net-core,view,controller,C#,Asp.net Mvc,.net Core,View,Controller,我正在尝试创建一个仪表板/图形界面来进行管理。如何创建从控制器调用某些函数的按钮?它位于ASP.NETCore3中,使用MVC模式 我想在应用程序中执行c#代码,方法是从Index.cshtml页面调用一个方法并传递参数 我尝试了多种解决方案,即那些声明视图和控制器与控制器函数同步以查找“同名”视图的解决方案,但它就是不起作用 编辑:找到解决方案:我需要指定控制器和操作结果。 <form action="Home/Change" method="post">

我正在尝试创建一个仪表板/图形界面来进行管理。如何创建从控制器调用某些函数的按钮?它位于ASP.NETCore3中,使用MVC模式

我想在应用程序中执行c#代码,方法是从Index.cshtml页面调用一个方法并传递参数

我尝试了多种解决方案,即那些声明视图和控制器与控制器函数同步以查找“同名”视图的解决方案,但它就是不起作用

编辑:找到解决方案:我需要指定控制器和操作结果。

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


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

如果要在单击按钮后将一段数据发送到服务器,则应在视图中创建一个表单,并在控制器中创建一个post操作。但是,如果您不想发布任何数据,并且只想在单击按钮后执行某些操作,请在控制器中创建一个get操作,并使用button click事件导航到该操作路径。最后,您可以在操作时返回相同的页面,并在开始之前执行您想要的操作。
在控制器中任何公共函数的顶部使用
[httpGet(“path”)]
属性将其标记为操作。然后您可以在HTML中使用类似这样的东西调用它,因为您只想在btn单击时触发一个函数并传递一些数据,我建议您使用java脚本或jquery对后端进行ajax调用是更有效的方法。 看起来像这样

$('#btn')。单击(函数(){
$.post(“您的操作url”,{name:“John”,time:“2pm”})
.完成(功能(数据)
{
//如果您的操作返回一些数据,它将位于“data”变量中
});
});

文件

欢迎来到堆栈溢出。请共享您的代码,即使它不起作用。我们希望看到您试图点击的控制器操作以及视图中使用的razor/javascript/ajax。刚刚编辑了文章以显示代码,现在就得到了解决方案。谢谢。我刚刚找到了我正在寻找的解决方案,但这应该也可以,因为几天前我用ButtonClickEvent尝试过。谢谢