すべての値をモデル フィールドに収集するために、あるコントローラー メソッドから別のコントローラー メソッドにモデルを渡しています。私は以下のようにやっています
[HttpPost]
public ActionResult A(Model m, string s)
{
if (ModelState.IsValid)
{
if (m.l == null || m.k == null)
{
//Do something.
}
else
return View("B", m); // this is where by debug point comes...
}
return View(m);
}
public ActionResult B(Model m)
{
return View(m);
}
[HttpPost]
public ActionResult B(Model m, string s)
{
if (ModelState.IsValid)
{
if (m.p == null || m.j == null)
{
//do something
}
else
{
// do something and redirect to somewhere else
}
}
しかし、私が示したように、デバッグポイントは以下に示すようにここに来ます.
return View("B", m);
これはコントローラメソッド「B」にヒットするはずですが、問題はコントローラメソッド「B」にヒットしないことです。しかし、コントローラーメソッド「B」のビューが表示されるため、この問題について混乱しています。また、メソッド「B」の httppost に (l,k) の値が表示されません。この理由は何ですか。
私はこれを正しいか間違っているかを知りたいです。私がこれを間違っている場合は、これについて少し説明してください。MVCが得意な人が助けてくれますか。前もって感謝します。