日期:2014-05-17  浏览次数:20766 次

给分题,大牛们给俺诊断下呗
private bool IsAllowableFileSize()//判断文件大小是否符合要求
    {
        double iFileSizeLimit = Convert.ToInt32(ConfigurationManager.AppSettings["FileSizeLimit"]);
        if (iFileSizeLimit > FileUpload.PostedFile.ContentLength)
        {
            return true;
        }
        else
        {
            return false;
        }
    }

问题:FileSizeLimit的值是10240KB,当我判断上传的文件比FileSizeLimit的值小的时候,返回True,可是当我调试上传比FileSizeLimit值小的文件的时候,总是提示文件大小不符合要求,也就是说我上传的文件比FileSizeLimit的值大,可是我明明是上传的比FileSizeLimit小的文件啊?这是什么情况?

------解决方案--------------------
这个方法看不出来,只是从配置文件中读取长度跟上传文件大小比较。
------解决方案--------------------
1KB=1024字节
FileUpload.PostedFile.ContentLength不清楚你的定义,是不是相当于FileInfo.Length?如果是的话,那就要除1024,FileInfo.Length得到的是字节的长度