在C#中限制文件大servlets器端
我目前正在MVC4中上传文件但在我的控制器中我试图将文件大小限制为最大4MB,但得到了以下警告
comparison to integral constant is useless
使用Haacks的例子
[HttpPost] public ActionResult Upload(HttpPostedFileBase file) { if (file.ContentLength > 0) { if (file.ContentLength < 4000000000 ) { var fileName = System.IO.Path.GetFileName(file.FileName); var path = System.IO.Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); file.SaveAs(path); }
当我运行代码时,我得到了错误
Maximum request length exceeded.
因为file.ContentLength
是一个我无法控制的int
,所以我不知道这是怎么回事。 任何人都可以帮助我如何限制服务器端的文件大小。
编辑对于那些可能想要指出4000000000
是4gb
你是对的。 但即使我用4000000
替换它我的操作成功完成但不保存文件因为我的If()
不满意,即file.ContentLength < 4000000
返回false。
编辑这不是一个重复的问题我想将文件大小限制到某个限制,而不是忽略IIS中的文件大小限制。
在web.config中设置此值