5
私は規則を使用するために私のURLを希望:私のルートでは、ASP MVC3を使用してURLの途中でオプションのパラメータを使用する方法はありますか?
/{controller}/{id}/{action}
ではなく
/{controller}/{action}/{id}
私は次のようにルートを設定してみました:
routes.MapRoute(
"Campaign",
"{controller}/{action}/{id}",
new { controller = "Campaign", action = "Index", id = UrlParameter.Optional }
);
しかし、これは動作しません。 idパラメータをオプションにすることができないためです。
次のURL
はを働いています:/campaign/1234/dashboard
/campaign/1234/edit
/campaign/1234/delete
しかし、これらのURL はない行います
/campaign/create
/campaign/indexempty
MVCはちょうど両方のためのIndex
呼び出します。私は間違って何をしていますか?
これは機能しました。あなたのコードを少し修正 - 私は最初のルート "CampaignDetail"は、2番目のルートと競合しないように命名した。 – parleer
ああ、私はそれを逃した。私はそれが助けてうれしいです。 –
もう一つ、 '{controller}/{id}/{action} 'が私のデフォルトルートを妨害していました。私は、私のURLに** campaign **という言葉を明示的に使ってこれを修正することができました。すなわち 'キャンペーン/ {id}/{行動} 'です。 – parleer