C# 使用标签助手调用控制器,包括asp.net core mvc中搜索栏中的数据
我对前端有点陌生,所以请耐心等待 我试图用asp.net core 2.2 MVC创建一个表单,以便大家在线建议使用ajax,但我想使用新的标记帮助程序。 这是我的代码(控制器用户与我所在的控制器不同)C# 使用标签助手调用控制器,包括asp.net core mvc中搜索栏中的数据,c#,asp.net-core,asp.net-core-mvc,C#,Asp.net Core,Asp.net Core Mvc,我对前端有点陌生,所以请耐心等待 我试图用asp.net core 2.2 MVC创建一个表单,以便大家在线建议使用ajax,但我想使用新的标记帮助程序。 这是我的代码(控制器用户与我所在的控制器不同) A. 该按钮使用?1=值调用同一url 但是我想调用标记中指定的控制器和操作,参数作为字符串user/userbyusername/whatusertype的一部分 我应该做什么改变才能让它工作?提前谢谢 更新---------------------- 使用asp路由值,我传递参数,但它传
A.
该按钮使用?1=值调用同一url
但是我想调用标记中指定的控制器和操作,参数作为字符串user/userbyusername/whatusertype的一部分
我应该做什么改变才能让它工作?提前谢谢
更新----------------------
使用asp路由值,我传递参数,但它传递的是“userName”,而不是下面的texboxid“userName”的值
<form method="get"asp-route-username="userName" asp-area="" asp-controller="User" asp-action="UserByUsername">
<input id="userName" type="text" placeholder="Search..">
<button type="submit" value="userName">a</button>
</form>
A.
如何传递该值?首先按照如下方式编写
表单:
<form method="post" asp-area="" asp-controller="User" asp-action="UserByUserName">
<input name="userName" type="text" placeholder="Search..">
<button type="submit">Submit</button>
</form>
这里我使用了post
方法。您还可以使用代码中显示的get
方法。为此,只需将method=“post”
替换为method=“get”
,将[HttpPost]
替换为[HttpGet]
现在一切都应该正常了。首先按照如下所示编写表单:
<form method="post" asp-area="" asp-controller="User" asp-action="UserByUserName">
<input name="userName" type="text" placeholder="Search..">
<button type="submit">Submit</button>
</form>
这里我使用了post
方法。您还可以使用代码中显示的get
方法。为此,只需将method=“post”
替换为method=“get”
,将[HttpPost]
替换为[HttpGet]
现在一切正常。请使用asp路由id传递参数,一切正常!谢谢!但是如何将值从输入传递到标记?我使用了输入的id,但没有传递它。我放置了asp route username=“username”(与id相同),但没有传递文本框的值您必须在路由配置中处理此问题是的,我已经这样做了,但我无法将输入的值传递给asp route value请使用asp route id传递参数。这一切正常!谢谢!但是如何将值从输入传递到标记?我使用了输入的id,但没有传递它。我将asp route username=“username”(与id相同),但没有传递文本框的值您必须在路由配置中处理此问题是的,我已经这样做了,但我无法将输入的值传递给asp路由值
[HttpPost]
public IActionResult UserByUserName(string userName)
{
// do whatever you want to do with `userName`
return View();
}