私はMVC Music Storeアプリケーションを完成しましたが、現在は練習のために自分で修正しています。私の仕事でも同様の作業をする準備をしています。MVC 2のHtml.ActionLinkに文字列を渡す
私が行ったことは、現在のユーザーリストを表示するビューを作成することです。私は、ユーザーのパスワードを忘れた場合に変更できるようにしたいと考えています。ここに私のビューから抜粋されています、それは私が上で行ったようにActionLinkの経由のユーザー名を渡すこと
<% foreach (MembershipUser user in Model) { %>
<tr>
<td><%: Html.ActionLink(user.UserName, "changeUserPassword",
"StoreManager", new { username = user.UserName }) %></td>
<td><%: user.LastActivityDate %></td>
<td><%: user.IsLockedOut %></td>
</tr>
<% }%>
私が知りたいのは何ですか。私はそれを正しく行っている場合しかし、私はわからないよ、global.asax.csファイルに次のルートを登録している:ここで
routes.MapRoute(
"AdminPassword", //Route name
"{controller}/{action}/{username}", //URL with parameters
new {
controller = "StoreManager",
action = "changeUserPassword",
username = UrlParameter.Optional
});
は私のGETアクションです:
public ActionResult changeUserPassword(string username)
{
ViewData["username"] = username;
return View();
}
私が通過デバッグしていますそのViewData ["username"] = usernameが見つからないように、コードを作成してください。そうしないと、私は正しくルートを登録していないか、または私のようにアクションリンクを使ってユーザー名を渡すことができません。
誰かが私を正しい方向に向けることができたら、感謝します。