0

ASP.NET MVC 4 アプリケーションでルーティングを使用していますが、非常に奇妙な問題が発生しています。Ekstranett という名前のエリアへのルートを確立しようとしていますが、最初の URL パラメーターとして Ekstranett を使用すると、内部サーバー エラーが発生します。私は Ekstranett 以外の言葉を使うことができますが、それは非常に奇妙です。これは私のセットアップです:

context.MapRoute(
            "Exception",
            "Ekstranett/Exception/{action}/{*handle}",
            new { controller = "Exception", action = "General", handle = UrlParameter.Optional },
            new[] { "MyProject.Areas.Ekstranett.Controllers" }
        );

        context.MapRoute(
            "Support",
            "Ekstranett/Support/{action}/{*handle}",
            new { controller = "Support", action = "Tickets", handle = UrlParameter.Optional },
            new[] { "MyProject.Areas.Ekstranett.Controllers" }
        );

        context.MapRoute(
            "Ekstranett_default",
            "Ekstranett/{controller}/{action}/{id}",
            new { controller = "Home", action = "Index", id = UrlParameter.Optional },
            new[] { "MyProject.Areas.Ekstranett.Controllers" }
        );

Ekstranett を Ektranett、Testing、Foobar などに変更すると完全に機能しますが、Ekstranett を使用すると機能しません。なぜ私がこの行動を経験しているのか、誰にも手がかりがありますか?

4

2 に答える 2

0

問題は解決しました!何年も前に、ekstranettという仮想ディレクトリを作成しましたが、それを削除すると、すべてがうまく機能するようになりました。

于 2012-11-30T12:20:09.147 に答える
0

推測ですが、エリアの名前がエクストラネットだからでしょうか?ある種のルーティング衝突を引き起こしている可能性があります。興味深いことに、ルート内ですべて小文字を使用した場合、それは機能しますか? (例"ekstranett/Support/{action}/{*handle}")

于 2012-11-30T11:31:30.163 に答える