|
|
1
18
虽然@Michael的解决方案提供了关于为什么存在这个问题的信息,但是有一个更简单的解决方案。在global.asax.cs中的控制器句柄中注册路由时,可以使用contstraint添加忽略的路由,如下所示:
|
|
|
2
8
在使用ASP.NETMVC从ASP.NET3.5升级到ASP.NET4.0之后,我们在IIS6上遇到了同样的问题。在iis7上一切正常,但是iis6给了我们一个问题。 问题是HttpContext.Current.Request.CurrentExecutionFilePath属性在IIS 6和IIS 7中给出了不同的结果:
ChartHttpHandler中有一个函数,它根据HttpContext.Current.Request.CurrentExecutionFilePath计算路径:
按照ASP.NET UrlRewriting的工作方式,由于ChartImg.axd的路径中仍然包含.mvc,因此调用的是mvc处理程序而不是图表处理程序。 我们找到了3种处理方法(详见下文):
(1) 结果表明,如果我们通过.mvc的IIS 6.0为.mvc添加一个脚本映射,那么Request.CurrentExecutionFilePath将被计算为我们想要的根路径,而不是更深的路径
(2) 我们发现添加一些路由表条目是可行的,但是我们必须考虑路径中所有可能的深度,才能使ASP.NET MVC忽略ChartImg.axd(如果它深入嵌入路径而不是根目录):
(3) 通过在所有控制器上重写Execute(),使所有控制器都继承自一个基本控制器,我们可以全局重写Execute(),以说明这种情况,并重定向到/ChartImg.axd
|
|
|
3
2
谢谢你的回答,但我不认为我的问题是IIS6/IIS7。
我把它追溯到
我还得换衣服
|
|
|
Linesofcode · 错误未指定sqlcese40。dll 8 年前 |
|
|
Arvo Bowen · 如何使用父控件的默认字体创建用户控件? 10 年前 |
|
Asdfg · 如何解析此文本并构建对象 10 年前 |
|
|
qakmak · WPF win8平板电脑模式键盘隐藏屏幕底部的项目 11 年前 |
|
|
DeJaVo · .NET4到.NET4.5运行时的更改是什么 11 年前 |