我正在尝试实现
搜索查询字符串
我的搜索栏。
遵循
Microsoft documentation: Adding search
,建议使用
Html.BeginForm("action", "controller", FormMethod.Get)
方法,当我得到错误时:
此页面不起作用
如果问题仍然存在,请与网站所有者联系。
HTTP错误405
我的搜索查询字符串显示:
localhost:7185/Searchbar__RequestVerificationToken=CfDJ8GCygMwCAINPiWbEfcvWp986TX925YtT_ivBMr4CJ0Cj6g6BDdH6xua1gReYA37rr5ljwc_GCuVXkANiQOt6hJVJpOLr308aqLyyO6ii9fpf6DIbDlkKxYtOHHRN-O5eOxj4ie-TU-uBX2CNp0x4&SearchString=a&__请求验证令牌=CfDJ8GCygMwCAINPiWbEfcvWp986TX925YtT_ivBMr4CJ0Cj6g6BDdH6xua1gReYA37rr5ljwc_GCuVXkANiQOt6hJVJpOLr308aqLyyO6ii9fpf6DIbDlkKxYtOHrN-O5eOxj4ie-TU-uBX2CNp0x4
我用过
[ValidateAntiForgeryToken]
在控制器中:
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Index(string searchString)
{
//Code
}
随着
@Html.AntiForgeryToken()
在视图中:
@using (Html.BeginForm("Index", "Searchbar", FormMethod.Get))
{
@Html.AntiForgeryToken()
<form class="d-flex w-50 ps-lg-5" role="search" asp-controller="Searchbar" asp-action="Index">
<div class="input-group">
<input class="form-control shadow-none" value="@TempData["searchString"]" type="search" placeholder="Search" id="text-suggestion" aria-label="Search" name="SearchString"
required oninvalid="this.setCustomValidity(' ')" />
<button class="btn btn-outline-success shadow-none" type="submit" id="search-button"><i class='bx bx-search'></i></button>
</div>
</form>
}