首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Request.Form抛出异常

Request.Form抛出异常
EN

Stack Overflow用户
提问于 2016-07-15 18:56:25
回答 1查看 4K关注 0票数 3

我正在制作的ASP.NET核心网络应用程序,我是通过HttpContext上传javascript文件的文件。所以,当我试图在服务器端使用Request.Form.File加载文件时,Form抛出了System.IO.InvalidDataException类型的异常。表单消息显示:“超过多部分正文长度限制16384”。我试图编辑web.config文件以增加该限制,但消息总是相同的。我是不是遗漏了什么或者我看错了方向?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-07-15 20:25:05

定义此属性:

代码语言:javascript
复制
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
public class RequestFormSizeLimitAttribute : Attribute, IAuthorizationFilter, IOrderedFilter
{
    private readonly FormOptions _formOptions;

    public RequestFormSizeLimitAttribute(int valueCountLimit)
    {
        _formOptions = new FormOptions()
        {
            ValueCountLimit = valueCountLimit
        };
    }

    public int Order { get; set; }

    public void OnAuthorization(AuthorizationFilterContext context)
    {
        var features = context.HttpContext.Features;
        var formFeature = features.Get<IFormFeature>();

        if (formFeature == null || formFeature.Form == null)
        {
            // Request form has not been read yet, so set the limits
            features.Set<IFormFeature>(new FormFeature(context.HttpContext.Request, _formOptions));
        }
    }
}

并将此属性添加到您的操作方法中,看看会发生什么:

代码语言:javascript
复制
[RequestFormSizeLimit(valueCountLimit: 2147483648)]
[HttpPost]
public IActionResult ActionMethod(...)
{
  ...
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38394410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档