1

ASP MVC3 プロジェクトでの呼び出し:-

<h2><a href="@Url.RouteUrl("_ScientificPrograms", new { idProgramaSeleccionado = @programa.Id, nombrePrograma = @programa.NombreProgramaUrl(), IdiomaSeleccion = idioma })">@programa.NombrePrograma(@idioma)</a></h2>

次の Global.asax.cs ファイルに登録されているルートに対応します。

routes.MapRoute(
             "_ScientificPrograms", // Route name
             "{IdiomaSeleccion}/research/scientific-programmes/{idProgramaSeleccionado}/{nombrePrograma}/{idGrupoSeleccionado}/{nombreGrupo}", 
             new { controller = "Research", action = "ScientificProgrammes", IdiomaSeleccion = UrlParameter.Optional, idProgramaSeleccionado = UrlParameter.Optional, nombreGrupo = UrlParameter.Optional, idGrupoSeleccionado = UrlParameter.Optional, nombrePrograma = UrlParameter.Optional } 
         );

次のようなURLを生成するローカルマシンで実行すると正常に動作します:-

http://localhost/es/research/scientific-programmes/1/molecular-oncology

ただし、Web サイトがデプロイされると、同じ呼び出しでのみ生成されます。

http://deployedsite/es/research/

入りながらも

http://deployedsite/es/research/scientific-programmes/1/molecular-oncology

ページを正しく解決します。

私自身のテスト ホスティングとクライアントの QA サーバーの両方で同じ動作が見られます。他のルーティング呼び出しは正常に機能しますが、これは特別なもののようです。

4

2 に答える 2

0

サーバーに最新の .NET サービス パックを適用すると、コードを変更することなく問題が修正されたことが判明しました。It-Works-On-My-Machine の動作は決定的な武器であることが判明しました。

于 2014-02-10T14:42:09.940 に答える