Asp.net mvc 3 ASP.NET MVC站点作为IIS中的应用程序存在问题
我有一个MVC项目,我刚刚作为一个应用程序安装在一个现有的IIS站点上。在测试时,路由工作正常,因为它在本地主机的根目录下运行,但当我将其部署为应用程序时,路由会出错(它试图将任何方法路由到,而不是路由到)。我知道这应该是一件相当简单的事情来解决,我就是想不出谷歌喜欢的正确措辞。Asp.net mvc 3 ASP.NET MVC站点作为IIS中的应用程序存在问题,asp.net-mvc-3,Asp.net Mvc 3,我有一个MVC项目,我刚刚作为一个应用程序安装在一个现有的IIS站点上。在测试时,路由工作正常,因为它在本地主机的根目录下运行,但当我将其部署为应用程序时,路由会出错(它试图将任何方法路由到,而不是路由到)。我知道这应该是一件相当简单的事情来解决,我就是想不出谷歌喜欢的正确措辞。 FWIW,我尝试执行以下操作,但它开始抛出403个错误: routes.MapRoute( "Default", // Route name "bar/{controll
FWIW,我尝试执行以下操作,但它开始抛出403个错误:
routes.MapRoute(
"Default", // Route name
"bar/{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
最初,该URL是“{controller}/{action}/{id}”,而不是“site/…”
有什么想法吗 我认为您正在尝试将一些模块分离到其他子文件夹结构中。你试过使用这些区域吗 仅仅使用现有url来重新路由并不容易
相反,尝试用鼠标右键单击VS2010项目并添加一个区域。该区域下的所有控制器和视图都将归入一个子文件夹。例如,我有一个类似于的url,请确保在get/post调用中调用的是
url.Content(“~/”
),而不仅仅是“~/”
我以前在一些mvc项目中遇到过这个问题,所以我想这就是发生的事情
祝你好运
(如果不可以将我的评论作为答案发布,我将删除此内容)您是否确保在get/post调用中调用
Url.Content(“~/”
),而不仅仅是“~/”
。我是MVC新手,只是直接输入Url,而不是Url.Content。谢谢很高兴我能帮忙。我把我的评论作为一个答案转发给你,这样你就可以把它作为首选答案(当然,如果它对你有帮助的话)父站点和mvc应用程序在两个不同的项目中。它们只在生产环境中结合在一起。不过,我将来会研究这个问题。事实证明,我使用的是直接的Url,而不是像Evan Layman在我帖子的评论中所说的Url.Content。我同意,我只是在等你写一个答案,这样我就可以将它标记为解决方案。