提交带有文件的表单(ASP.NET MVC)时,文件是否保存在服务器磁盘中的任何位置?

时间:2015-03-11 15:23:19

标签: asp.net-mvc

我有一张表格:

<form enctype='multipart/form-data' method="post" action="@Url.Action( "Test" )">
   <input type="file" multiple="multiple" name="files" />
   <input type="submit" value="submit"/>
</form>

并在服务器端(使用ASP.NET MVC控制器):

[HttpPost]
public ActionResult Test( HttpPostedFileBase[] files )
{
    // and here save some files, not all.
    return new EmptyResult();
}

当我提交时,文件存储在临时文件夹或内存中吗?

例如,我想上传8个文件和服务器端我想按标准过滤这些文件。这些文件是否保存在磁盘上?

1 个答案:

答案 0 :(得分:0)

在您编写代码并执行保存之前,不会保存/处理该文件以进行保存。

保存文件时允许存储。否则它将在files对象中。一旦退出Test()功能,该对象将被删除。这并不意味着文件将被加载到temp / some where in the server。它将是一个请求对象。当您进行操作时,它将从客户端上传到服务器。

您正在对Http / https进行操作。不在机器上。

要在点击上传时更好地了解 - 只需打开Developer工具/在浏览器中按F12,然后转到Network Tab

Posted file from client to server - Upload

在此处查看已发布/已上传的文件请求演示Click Here