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

上传图片的默认大小(web.config)
系统默认上传文件的大小是4M。但当上传文件超过这个大小时候。数据流就会被切断。
我想当用户上传大于系统默认的大小时。提示错误信息。能不能实现。
------最佳解决方案--------------------
配置web.config:
<configuration>
    <system.web>       
        <httpRuntime maxRequestLength="102400" useFullyQualifiedRedirectUrl="true" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100" enableVersionHeader="true"/>
    </system.web>
IIS 的maxAllowedContent Length的缺省值为30000000 bytes.  上传大于这个长度的数据流被截断,导致文件或目录找不到。
<system.webServer>    
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="2097152000" maxQueryString="5000" maxUrl="8000"></requestLimits>
      </requestFiltering>
    </security>
  </system.webServer>
------其他解决方案--------------------
引用:
引用:配置web.config:
<configuration>
    <system.web>       
        <httpRuntime maxRequestLength="102400" useFullyQualifiedRedirectUrl="true" minFreeThreads="8" minLoc……

if (bytes >1024 * 4)//这里你改成6了吗?1024*6
                {
                    Response.Write("no");//图片不能大于4M  
                    //Response.End();
                }
------其他解决方案--------------------

FileInfo fileInfo = new FileInfo("文件路径");
float f = fileInfo.Length / 1024;
if(f/1024 > 4)
{
 MessageBox.Show("上传图片文件大小不得超过4M");
}

------其他解决方案--------------------
用SWFupload这个flash的上传组件,可以在客户端判断文件的大小。
------其他解决方案--------------------
如果在web.config里设置的话,超过大小貌似还是会尝试上传的,只是上传过程中会发现超过大小而截断,所以效率不好。
用flash的一些上传组件应该可以在上传前判断出文件的大小,js的不知道可不可以,楼主可以自行搜索一下。
------其他解决方案--------------------
引用:
如果在web.config里设置的话,超过大小貌似还是会尝试上传的,只是上传过程中会发现超过大小而截断,所以效率不好。
用flash的一些上传组件应该可以在上传前判断出文件的大小,js的不知道可不可以,楼主可以自行搜索一下。

不会哦。我在web.config里面配置的是6M。ajax提交表单到A页面进行文件判断

 $("#form1").ajaxSubmit({
        success: function (data, status) {
            if (status == "success") {
                if (data == "no") {
                    alert("不能上传大于4M的图片");
                    file.parent().html