html тег для запуска действия - PullRequest
0 голосов
/ 12 марта 2020

В моем текущем проекте Net Core MVC я хотел бы сделать следующее: Как я могу получить элемент <a> для запуска какого-либо действия в моем контроллере, отправки некоторого значения, а затем возврата на ту же страницу?

Что у меня есть: Вид:

<a asp-controller="ControllerName" asp-route-id="@item.ID"><i class="far fa-check-square" ></i></a>

Это необходимо для запуска метода в моем контроллере, но все, что он делает, это открывает новую белую страницу (после маршрутизации: ".../ControllerName/ConcludeAct/item.ID ").

Мой контроллер ControllerName выглядит следующим образом:

[HttpPost]
public async Task<IActionResult> ConcludeAct(int id, string value)
{
    // do logic
    return redirect("/somepage");  
}

Таким образом, щелчок по элементу должен вызвать этот метод, отправив int id и string value сделать несколько обработка, а затем вернуть вид. И [HttpGet], и [HttpPost] не работают, они по-прежнему направляются на пустую страницу.

Если это невозможно с элементом <a>, какой элемент лучше использовать, где я также могу использовать значок от FontAwsome?

1 Ответ

0 голосов
/ 12 марта 2020

Это сработало для меня

<a asp-controller="ControllerName" asp-route-id="@item.ID" asp-action="ConcludeAct" asp-route-value="nextStage" type="button"><i class="far fa-check-square"></i></a>
...