0

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

[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
        );
4

1 に答える 1

2

returnステートメントのを削除new{}します。

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

また、Routecollectionにルートを追加しませんでした

于 2012-04-13T06:32:12.487 に答える