0

私を助けてください、私のコントローラーには、「インデックス」と呼ばれる同じ名前の2つのアクションメソッドがありますが、パラメーターが異なります..

 public ActionResult Index()
        {...}

 [HttpPost] 

 public ActionResult Index(PickingMobile mi, string hdnSelectOperation, string btnMPSearch, string btnSearchMP)
        {...}

他のアクションから、パラメーターを持たない Index アクションにリダイレクトしたい

public ActionResult ConfirmBatchPicking(PickingMobile DirectPicking)
        {
...
 return RedirectToAction("Index", "ManualPickingSearch");// from here I need to redirect to first Index Method which does not have any parameters
          }

しかし、ブレークポイントを保持してシーケンスをデバッグすると、最初の Index メソッドがヒットしません。最初の Index アクションにリダイレクトする方法を教えてください。

4

2 に答える 2

1
  1. RedirectToAction は、応答として RedirectToRouteResult をブラウザに返します。この応答により、ブラウザーは別のアクション メソッド (この場合は ManualPickingSearchcontroller の Index アクション) に対して新しい get 要求を作成します。
  2. 2 番目の Index アクション (パラメーター付きのもの) は、httpPost 属性に関連付けられています。これは、投稿要求のみを行うことができることを意味します。

したがって、 return RedirectToAction("Index", "ManualPickingSearch"); と言うと、デフォルトでは、最初のアクション メソッドにリダイレクトされます。デフォルトの動作です。それがどのように機能するかです。何か不足していないか確認してください。 (コントローラ名を確認してください)

于 2014-07-10T04:34:17.970 に答える
0

これを試して;

return RedirectToAction("Index");
于 2014-07-10T04:19:38.733 に答える