我目前正在 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 中的文件大小限制。