IIS请求限制<requestlimits maxallowedcontentlength =“x”>是否可以应用于特定的ASP.NET路由?</requestlimits>

时间:2011-12-21 02:03:07

标签: asp.net-mvc-3 iis-7 web-config asp.net-routing

我正在查看IIS 7 Request Limits <requestLimits>设置,特别是maxAllowedContentLength,并想知道这是否可以在ASP.NET Routing级别应用?我正在使用允许文件上传的ASP.NET MVC 3项目,但我想只允许对这些特定路由的更大请求。

此问题类似于未答复的Can I increase maxRequestLength of ASP.NET request for MVC Controller Action with additional parameters?

Where do I catch and handle maxAllowedContentLength exceeded in IIS7?的回答似乎暗示我可以做这样的事情,但我一直在寻找确认或其他想法。

protected override void OnError(EventArgs e)
{
    Exception err = Server.GetLastError();
    if (err is HttpException)
    {
        if ((err as HttpException).WebEventCode == 3004)
        {
            // check to see if upload request and let through
            Server.Transfer( Context.Request.Url.LocalPath );
            return;
        }
    }
    base.OnError(e);
}

1 个答案:

答案 0 :(得分:1)

您可以将<requestLimits>元素放在与该路由对应的(假)虚拟目录的<location>标记中。

我不知道有什么更好的解决方案。