2012-04-12 11 views
0

SelfPostingアクション(IsValidを渡す)の後にRedirectToActionメソッドを使用しようとしています。リダイレクトは正常に行われますが、アクションに渡そうとしているパラメータは常にnullです。RedirectToActionとRoutingがパラメータを正しく渡しません。

[HttpPost] 
public ActionResult UploadForm(UploadFormViewModel formVM) 
{ 
     if (!ModelState.IsValid) 
     { 
      return View(formVM); 
     } 

     return RedirectToAction("UploadConfirm", new { confirmVM = new UploadConfirmViewModel() }); 
} 

public ActionResult UploadConfirm(UploadConfirmViewModel confirmVM) 
{ 
     return View(confirmVM); 
} 

そしてここで私は

 routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

     routes.MapRoute(
      "UploadConfirm", 
      "{controller}/{action}/{confirmVM}", 
      new { controller = "EnrollmentUpload", action = "UploadConfirm" } 
      ); 

     routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "EnrollmentUpload", action = "UploadForm", id = UrlParameter.Optional } // Parameter defaults 
     ); 

答えて

2

をルーティングしているあなたのreturn文でnew{}を削除します。

return RedirectToAction("UploadConfirm", new UploadConfirmViewModel()); 

を私はまた、勤務Routecollection

+0

に余分なルートを追加しませんでした、どうもありがとうございました。 – EkoostikMartin

関連する問題