ASP.NET MVC アプリケーションで、管理者が新しいメンバーを承認または拒否するためのロジックを作成しています。次のように、メンバーのリストと [承認] と [拒否] の 2 つのボタンを表示しています。
<% foreach (var mm in (ViewData["pendingmembers"] as List<MyMember>)) %>
<% { %>
<tr><td>Username:<%=mm.UserName %></td><td>
<tr><td>Firstname:<%=mm.FirstName %></td><td>
...etc...
<tr>
<td>
<% using (Html.BeginForm("AcceptPendingUser", "Admin"))
{ %>
<input type="submit" value="Accept" />
<% } %>
</td>
<td>
<% using (Html.BeginForm("RejectPendingUser", "Admin"))
{ %>
<input type="submit" value="Reject" />
<% } %>
</td>
</tr>
<% } %>
したがって、保留中のメンバー データのリストは MyMember-objects のリストにあります。各 MyMember オブジェクトはメンバーとして出力され、管理者が保留中のメンバーを承認または拒否するための 2 つのボタンが設定されます。
次に、コントローラーで、次のように、これら 2 つの入力フィールド/フォームの処理を分離しています。
public ActionResult AcceptPendingUser()
{
// TODO: Add code to save user into DB and send welcome email.
return RedirectToAction("Index");
}
public ActionResult RejectPendingUser()
{
// TODO: Add code to remove user from PendingUsers list and send rejection email.
return RedirectToAction("Index");
}
ユーザーが押したボタンの横にあるオブジェクトを直接取得したいと思います。ビューからコントローラーに MyMember オブジェクトを送信するにはどうすればよいですか? または、ボタンを押して数値インデックスを送信するにはどうすればよいですか? たぶん隠しフィールドで?