是否有一种简单的方法可以从FileInfo
获取HttpPostedFileBase
对象?我意识到我可以保存文件然后执行DirectoryInfo.GetFiles
之类的操作,然后遍历查找我的文件的文件,但有没有更简单的方法为给定文件执行此操作?
答案 0 :(得分:7)
上传的文件没有关联FileInfo
。仅将filename
作为参数以及文件流本身发送。这就是你可以查询的内容:
HttpPostedFileBase file = ...
string filename = file.FileName;
int fileSize = file.ContentLength;
string contentType = file.ContentType;
using (Stream stream = file.InputStream)
{
// do something with the file contents here
}
为了更好地了解从客户端发送的内容,我邀请您阅读multipart/form-data
规范。
FileInfo对象包含LastModified和LastAccessed日期之类的内容,它不是上载文件时发送的信息。如果您将文件保存在Web服务器磁盘上,然后从中检索FileInfo,请记住,您要检索的是有关此文件的信息在服务器上,不在客户端上只是因为上传文件时从不发送此信息。