在我的开发环境中
Url.Action("Index", "User") ---> /user
在生产环境中,应用程序在名为“ucms”的应用程序下配置
Url.Action("Index", "User") ---> /ucms/User
我有基于url即/ user的授权,因此它在生产环境中失败了。如何修复此问题以删除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
);
修改 我已经找到了一种方法,有人可以分享这方面的想法。
将虚拟路径存储在web.config中。
<add key="appvirtualpath" value="~/ucms"/>
在将url传递给数据库层时,我将替换虚拟路径将为空白。
Url.Action( “索引”, “用户”),更换(ConfigurationManager.AppSettings [ “appvirtualpath”]。的ToString(), “〜”);
答案 0 :(得分:1)
我通过在开发环境中添加虚拟路径来解决这个问题
右键单击项目,属性,Web和虚拟路径。
我不知道是否有办法在生产环境中配置它