在ASP.NET Core中,使用Ajax发送FormFile时,需要确保正确地设置请求头,并且在控制器中接收文件的参数名称与请求中的名称一致。
以下是一个示例,展示了如何使用Ajax发送FormFile并在控制器中获取文件:
[HttpPost]
public async Task Upload(IFormFile file)
{
// 在这里处理上传的文件
if (file != null && file.Length > 0)
{
// 执行文件处理逻辑
}
return Ok();
}
请确保在控制器中的参数名称与前端代码中FormData的append方法中的参数名称一致。在示例中,参数名称都是"file"。
此外,在Ajax请求中,需要设置processData
为false
,contentType
为false
,以确保FormData不会被转化为字符串,以及正确地设置请求头。
通过以上步骤,您应该能够在控制器中成功接收到Ajax发送的FormFile。