我想弄清楚如何通過視圖模型如何在MVC中跨視圖傳遞模型數據?
這是我在做什麼,我有一個註冊,RegisterConfirm,RegisterComplete視圖。
用戶開始註冊,填寫信息,點擊繼續併發布到RegisterConfirm他們點擊複選框以同意隱私策略,然後發佈到RegisterComplete,它根據第一個註冊視圖中的模型創建用戶。
代碼:
[GET("Account/Register")] public ActionResult Register() { return View(); } [POST("Account/Register/Confirm")] public ActionResult RegisterConfirm(RegisterModel model) { if (ModelState.IsValid) { return View(model); } else { return View("Register", model); } } [POST("Account/Register/Complete")] public ActionResult RegisterComplete(RegisterModel model, bool agree) { if (agree) { // Create User } return View("Register", model); }
觀形成
Register: @using (Html.BeginForm("RegisterConfirm", "Account", FormMethod.Post, new { @id = "create" })) { Register Confirm: @using (Html.BeginForm("RegisterComplete", "Account", FormMethod.Post, new { @id = "create" })) {
問題是,當我越來越對RegisterComplete,模型值爲空...任何想法,或者這是不可能的?或者應該這樣工作,我需要仔細檢查我的registercomplete?
我想這是因爲我沒有在RegisterConfirm的數據元素,並具有隱藏輸入元素收到你的模型回將不可行,因爲RegisterModel將包含他們創建的密碼,TempData將工作,只是嘗試並正確傳遞,所以我會用...感謝您的建議 – jaekie