サイトでウィザードのようなワークフローを作成しようとしていますが、各ステップのモデルがあります。
私は次の行動方法を持っています:
public ActionResult Create();
public ActionResult Create01(Model01 m);
public ActionResult Create02(Model02 m);
public ActionResult Create03(Model03 m);
そして、私はユーザーにアドレスを次のように見てもらいたい
/Element/Create
/Element/Create?Step=1
/Element/Create?Step=2
/Element/Create?Step=3
すべてのモデルクラスは、Stepプロパティを持つBaseModelから継承します。パラメータを持つアクションメソッドには、正しいAcceptVerbs制約があります。
すべてのメソッドにCreateという名前を付けようとしましたが、その結果、AmbiguousMatchExceptionが発生しました。
ここでやりたいのは、アクションごとにカスタムルートを作成することですが、その方法がわかりません。これは私が試したものです:
routes.MapRoute(
"ElementsCreation",
"Element/Create",
new{controller="Element", action="Create01"},
new{Step="1"}
);
しかし、これは機能しません。
(正しいMapRoute呼び出しまたはおそらく別のアプローチでの)助けをいただければ幸いです。
ありがとう