Razor テンプレートに検索ボックスがあります。
@{
using (Html.BeginForm("Detail", "Book", FormMethod.Get))
{
@Html.TextBox("Id")
<input type="submit" value="Search" />
}
}
検索を送信すると、次のような URL に移動します。
~/本/詳細?Id=1234
ただし、見た目がきれいだと思うという理由だけで、URLを次のようにフォーマットしたいと思います。
~/本/詳細/1234
コントローラーメソッドのシグネチャは次のようになるため、これは完全に正常に機能します。
// GET: /Book/Detail/id
public ActionResult Detail(string id)
TextBoxFor を使用したモデル
私は試しましたHtml.TextBoxFor
:
@model WebApplication.Models.SearchModel
@{
using (Html.BeginForm("Detail", "Book", FormMethod.Get))
{
@Html.TextBoxFor(m => m.Id)
<input type="submit" value="Search" />
}
}
同じ結果です。