0
私のルート設定(MVC 5)に問題があります。私は、同じパラメータシグニチャ(同じ量のパラメータとパラメータタイプ)を持つ複数のルートを持っています。MVCルート設定同じURLパラメータの署名
下のコードでは、下の2つの設定は、突き合わせのヘッドです。サーバーへの通常のポストバックは、同じ同じ署名のために、一番下のデフォルトのパスを取得し、代わりに中央のものを取得することになっています。
私は中央のものを一番下のデフォルトのものからユニークにする方法を考え出すことができません。私はまだそれらの2つの文字列(アクションとgameHtmlAbbr)を持つために中間のものが必要です。
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: null,
url: "{gameConsoleHtmlAbbr}",
defaults: new { Controller = "Game", action = "GameList", gameConsoleHtmlAbbr = (string)null }
);
routes.MapRoute(
name: null,
url: "{action}/{gameHtmlAbbr}",
defaults: new { Controller = "Game", action = "Snes", gameHtmlAbbr = (string)null }
);
routes.MapRoute(
name: null,
url: "{controller}/{action}",
defaults: new { controller = "Game", action = "GameList" }
);
}
}
第2および第3 3つ目は2つのセグメントを持つので、2つのセグメントを持つものはすべて2番目のセグメントに一致します。 Snes/{gameHtmlAbbr}をユニークなものにすることができ、//Snes/someThingは2番目の一致します –
私は第2を使用するいくつかのアクションメソッドを持っています。/{gameHtmlAbbr}など。それぞれのアクションメソッドについて別々のルートを実行する必要がありますか? – mgmedick
その場合、それぞれのメソッドに特定のルートが必要です。 –