1

私の開発環境では

Url.Action("Index", "User") ---> /user

本番環境では、アプリケーションは「ucms」という名前のアプリケーションの下に構成されています

Url.Action("Index", "User") ---> /ucms/User

/user などの URL に基づいて承認されているため、運用環境では失敗しています。この問題を修正して ucms を削除するにはどうすればよいですか?

編集 ルートはデフォルトのものです。参考までに、アプリケーションを mvc 3.0 から 4.0 にアップグレードしました。

 routes.IgnoreRoute("{resource}.axd/{*pathInfo}");     
 routes.MapRoute(
                        "Default", // Route name
                        "{controller}/{action}/{id}", // URL with parameters
                        new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

編集 私はそれを行う1つの方法を見つけました。これについて誰かが考えを共有できますか.

仮想パスを web.config に保存します。

   <add key="appvirtualpath" value="~/ucms"/>

そして、URL をデータベース レイヤーに渡すときに、仮想パスを置き換えて空白にします。

Url.Action("Index","User").Replace(ConfigurationManager.AppSettings["appvirtualpath"].ToString(), "~");

4

1 に答える 1