MVC调试一问题

最近研究MVC,用VS2008自带的调试程序一切OK。然后设置成IIS的虚拟目录发现好像CONTROL无法解析出来,提示“无法找到该页”。一开始怀疑是没有设置到根目录的问题,然后设置到IIS的根目录,结果错误依然!最后发现是XP自带的IIS5和VS2008的开放服务器的差异问题。查考:http://blogs.microsoft.co.il/blogs/dorony/archive/2007/12/15/using-asp-net-mvc-on-iis-5.aspx 原因原来是IIS对无后缀的WEB程序没有进行解析

设置该虚拟目录下的映射关系,增加“.*”的扩展,可执行文件路径设置同“.ASPX ”,特别不要忘记取消“检查文件是否存在”!

 

解决方法之二:以上方法影响范围过大,也可以用修改MVC的ROUTING来解决

     修改:DEFAULT页面:

     

ContractedBlock.gif ExpandedBlockStart.gif Code
        public void Page_Load(object sender, System.EventArgs e)
        {
            Response.Redirect(
"~/Home");
        }
        改成
         
public void Page_Load(object sender, System.EventArgs e)
        {
            Response.Redirect(
"~/Home.aspx");
        }

 

     修改ROUTE:

 

ContractedBlock.gif ExpandedBlockStart.gif Code
routes.MapRoute(
                
"Default",                                              // Route name
                "{controller}/{action}/{id}",                           // URL with parameters
                new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
            );
改为
routes.MapRoute(
                
"Default",                                              // Route name
                "{controller}.aspx/{action}/{id}",                           // URL with parameters
                new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
            );

 

这样就是/HOME.ASPX/INDEX代替/HOME/INDEX了

转载于:https://www.cnblogs.com/enli/archive/2008/08/12/1265751.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值