私はASP.NET Core Webアプリケーションを作成しており、javascriptファイルからHttpContextを介してPDFファイルをアップロードしています。したがって、サーバー側でRequest.Form.Fileを使用してファイルをロードしようとすると、FormがSystem.IO.InvalidDataException型の例外をスローしています。フォームメッセージに「マルチパートボディの長さ制限16384を超えました」と表示されます。私はその制限を増やすためにweb.configファイルを編集しようとしましたが、メッセージは常に同じです。 私には何か不足しているか、間違っていると思いますか?Request.Formが例外をスローする
ありがとうございました。何が起こるか見
[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));
}
}
}
をそして、あなたのアクションメソッドにこの属性を追加します:
あなたはFormOptions内MultipartBodyLengthLimitを設定してみてくださいましたか? – sabkaraja
http://stackoverflow.com/a/38360093/1184056 –
アップロードするファイルのサイズはどのくらいですか? –