ASP.NET MVC 1-5で多くの経験があります。今、私はASP.NET Core MVCを学び、ページ内のリンクにパラメーターを渡す必要があります。たとえば、次のようなものがありますAction
[HttpGet]
public ActionResult GetProduct(string id)
{
ViewBag.CaseId = id;
return View();
}
タグヘルパーを使用してこのアクションのリンクを実装するにはどうすればよいですか?
<a asp-controller="Product" asp-action="GetProduct">ProductName</a>
属性プレフィックスasp-route-
を使用して、ルート変数名にプレフィックスを付けることができます。
例:
<a asp-controller="Product" asp-action="GetProduct" asp-route-id="10"> ProductName</a>
次の構文を適用できます。
<a asp-controller="Member"
asp-action="Edit"
asp-route-level="3"
asp-route-type="full"
asp-route-id="12">Click me</a>
これにより、このような呼び出しルートが生成されます。
/メンバー/編集/ 3/full/12
次に、次のようにメソッドで受信できます。
[Route({level}/{type}/{id})]
public IActionResult Edit(int level, string type, int id) { ... }
メソッドを修飾する属性はMVCでは必要ありませんが、リンクの属性をメソッドで渡されたパラメーターにバインドする方法をより明確に示しています。