0
私は新しいユーザー登録フォームでMVCを学習し、MVCアプリケーションでDropDownを使用しています。これは悪いようです。これはどのように行うべきですか? Asp.Net MVCとドロップダウン
私の画面のほとんどには、2つのコントローラメソッドがあります。 1つはGET(画面の最初の表示)用で、もう1つはPOST(ユーザーが[送信]ボタンをクリックしたとき)用です。私はコピーしたコードを掲示しています
public ActionResult UserRegistration()
{
SelectList list = new SelectList(SiteUserRepository.GetTimezones(), "timezone_id", "location");
ViewData["timezones"] = list;
return View();
}
[HttpPost]
public ActionResult UserRegistration(SiteUserModels.SiteUserRegistrationModel model)
{
if (ModelState.IsValid)
{
SiteUserRepository.CreateUser(model.username, model.email, model.password, model.firstname, model.firstname, model.timezone_id);
return RedirectToAction("Index", "Home");
}
SelectList list = new SelectList(SiteUserRepository.GetTimezones(), "timezone_id", "location");
ViewData["timezones"] = list;
return View();
}
注:ここでは
コードです。ドロップダウン(SelectList)のコードがコピーされています。 ViewDataは最初のリクエストでしか利用できないことがわかったので、投稿用に再実行する必要がありました(ユーザーが無効なデータを入力した場合、画面が返されます)
これを行う良い方法はありますか?
パーフェクト!それを指摘してくれてありがとう。 100%動作します。次にエラーチェックを追加します。 – Craig