【发布时间】:2012-06-19 07:18:18
【问题描述】:
所以我使用这段代码来查看:
<form action="" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<input type="submit" />
</form>
这适用于模型:
[HttpPost]
public ActionResult Index(HttpPostedFileBase file) {
if (file.ContentLength > 0) {
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
file.SaveAs(path);
}
return RedirectToAction("Index");
}
除非用户添加不是图像的文件,否则效果很好。我如何确保上传的文件是图像。谢谢
【问题讨论】:
-
图片格式有很多种。
-
@DanielA.White 这正是我的问题的重点。确定它是任何图像格式,但毕竟是图像。
-
您可以检查
file的ContentType作为基本的验证形式。如果这还不够好,您可以尝试查看文件流的“标题”,看看它是否与您支持的任何图像类型匹配,ala stackoverflow.com/questions/210650/…
标签: c# .net asp.net-mvc razor file-upload