C# 如何从.cshtml页面中的按钮调用控制器中的函数?
我正在尝试创建一个仪表板/图形界面来进行管理。如何创建从控制器调用某些函数的按钮?它位于ASP.NETCore3中,使用MVC模式 我想在应用程序中执行c#代码,方法是从Index.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">
<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尝试过。谢谢