0

在 ASP.NET MVC 中,上传文件我只是使用<input type="file" ... />,并且我发布表单的操作采用HttpPostedFileBaseas 参数。到现在为止还挺好。现在的问题是:是否HttpPostedFileBase仅包含元数据并引用服务器磁盘上的临时文件,或者对象是否包含实际字节?由于可伸缩性,这很重要,因为我有一个场景,HttpPostedFileBase在会话中保持 非常方便,但如果对象包含上传文件的实际字节,我担心这可能会很快填满服务器的内存。

4

1 回答 1

2

它将数据保存在内存中。如果您担心可伸缩性,您可能需要规划一个网络场,并且在您的会话中包含许多大型项目无论如何都不是一件好事。所以最好自己管理这些(使用文件或数据库并将文件名/ID存储在会话中)。

决定实际上取决于文件的数量和大小以及您对它们的处理方式(即您是否需要每个请求,或者可能在 20 分钟后的某个会话中需要一个文件)。

于 2012-07-10T11:23:43.347 回答