HtmlHelper.Hidden の動作がわかりません。
これは、Views/Shared/DisplayTemplates/Test.cshtml 内のテンプレートからのものです。アイデアは、リスト内の要素の横に削除ボタンを出力することでした。したがって、ビューは IEnumerable のモデルを受け入れ、 @Html.EditorForModel() を使用して各テスト項目を出力します。
したがって、これを Test.cshtml に入れると:
<input type="hidden" name="Name" value="@Model.Name"/>
@Html.Hidden("Name2", Model.Name)
それはこれをもたらします:
<input type="hidden" name="Name" value="test"/>
<input id="RoleList_12__Name2" name="RoleList[12].Name2" type="hidden" value="test" />
Html ヘルパーの名前が、私が指示したものと異なるものをレンダリングするのはなぜですか? これは意図的なものだと思いますが、理由がわかりません。
アップデート
コントローラーで RoleList[12].Name を取得するにはどうすればよいですか?
私の削除機能は受け入れます:
[HttpPost]
public ActionResult DeleteRole(Roles.Test model)
{
}
RoleList[12] name アイテムをどのように受け入れることができますか? 試してみると、常に null が返されます。