1

たとえば、サポートする必要があるサイトのいくつかの代替案をテストしています

site.com
site.com/Controller/Action/id
site.com/various.aspx
site.com/optionalparameter  <-- these two go to the same controller
site.com/optionalparameter/ <-- these two go to the same controller

オプションのパラメーターが受け入れられるかどうかを実際に確認する必要がありますが、それを確認するコントローラーに送信できます。他のルールはこれまでのところ機能しているようですが、オプションのパラメーターを 1 つだけ機能させることはまだできていません。

URL のオプションのパラメーターは、スラッシュ「/」の有無にかかわらず (少なくともなしで) 使用できます。同様の質問を見つけましたが、「optionalParam/xx/yy」があるように見えるため、ルールにはより多くのパラメーターがあり、正常に機能しているように見えますが、これは MVC 以外のサイトを MVC ルーティングを使用するように変換する特殊なケースです。 .

私がやろうとしていることの例ですが、うまくいきません。

routes.MapRoute(
    "optionalParamRoute", 
    "{name}",
    new { controller = "Home", action = "Index", name = "" }
);

これは可能ですか?

4

1 に答える 1

0

オプションのParamRouteパラメーターの先頭に移動してみてください。

routes.MapRoute(
    "optionalParamRoute", 
    "{name}",
    new { controller = "Home", action = "Index", name = "" }
);

// other routes
于 2012-11-28T08:55:17.900 に答える