1

当我尝试查看 MaximumRequestLengthExceeded 错误页面时,我遇到了一种奇怪的行为。似乎当控制器操作与视图命名相同时,请求直接进入视图,我得到以下异常:

无法将“ProjectNamespace.Views.CommonError.MaximumRequestLengthExceeded”类型的对象转换为“System.Web.IHttpHandler”类型。

这是当 Action 和 View 都被称为“MaxRequestLengthExceeded”或“MaximumRequestLengthExceeded”的时候。

如果我将 Action 称为一个,而将视图称为另一个,则它在两种变体中都可以正常工作。

public class CommonErrorController : Controller
{
    public ActionResult MaxRequestLengthExceeded()
    {
        return View("MaximumRequestLengthExceeded", null);
    }
}

此外,我还有另一个带有索引操作和索引视图的控制器“门户”,它们都称为相同的并且它们也可以正常工作。如果我将此 MaxRequestLengthExceeded 操作移动到该控制器中,我也会再次收到错误消息。

有谁知道我可能会错过什么?

4

0 回答 0