我在IIS 6服务器上部署MVC 2应用程序时遇到了一些问题。
我有以下项目结构:
/
App/
Controllers/
Helpers/
Infrastructure/
Models/
Views/
Public/ # This folder contains CSS and JS files
Global.asax
Web.config
我有一个自定义System.Web.Mvc.WebFormViewEngine
,告诉我的应用程序在/App/Views
而不是默认/Views
中查看视图。
它适用于Cassini和IIS 7.5。
我需要在IIS 6上的虚拟目录中部署我的应用程序,并且在尝试访问任何控制器时遇到404错误。
我读到我需要添加Default.aspx
后面的代码:
protected void Page_Load( object sender, EventArgs e ) {
HttpContext.Current.RewritePath( Request.ApplicationPath, false );
IHttpHandler httpHandler = new MvcHttpHandler();
httpHandler.ProcessRequest( HttpContext.Current );
}
它实际上调用了我的默认控制器,并显示了相应的视图,但它是我迄今为止唯一能够获得的页面。
我尝试启用通配符映射,它没有改变任何东西。但我正在使用ASP.NET 4.0和it enables routing of extension-less URLs。
我现在不确定该怎么做,我在互联网上找不到任何其他有用的信息来源。
我怎么能让它发挥作用?
答案 0 :(得分:2)
见Phil Haack的this walkthrough。
答案 1 :(得分:1)
还不能发表评论,但那次演练就是这样。 我自己做了通配符。
就在不久之前,所以我不记得我现在必须做些什么才能修好它,但它花了我几个小时。 如果我没记错的话,我在他的指示中遗漏了一些非常小的细节。你得到什么错误/不正确的行为?你可能会触发我的记忆。