我在web.config中有这个:
<httpErrors errorMode="Custom" defaultResponseMode="ExecuteURL">
<remove statusCode="404" />
<error statusCode="404" path="/Error/NotFound" />
</httpErrors>
当我浏览此网址(不存在)时:http://localhost:8605/a.png
它不会在我的NotFound
控制器中执行Error
操作。为什么呢?
如果我明确地将responseMode="ExecuteURL"
添加到error
元素,那么它就可以了。
像这样:<error statusCode="404" path="/Error/NotFound responseMode="ExecuteURL" />
为什么我不能在httpErrors
元素中全局设置该属性?
答案 0 :(得分:0)
httpErrors defaultResponseMode 不用于明确定义的错误。
error documentation表示错误responseMode 默认为文件。