如何显示2mb大小的图像asp.net图像控件?

时间:2011-10-21 04:17:57

标签: asp.net image asp.net-3.5

我想在我的asp.net图像控件中显示图像,因为图像大小,我遇到了问题。如果图像大小在运行时小于1mb,它将可见但超过1mb则不会显示。我该如何解决这个问题?

代码:

<div style="overflow: hidden; width: 1345px;">
    <asp:Image runat="server" ID="ImgTop" ImageUrl="~/Images/dh_banner.jpg"
        Width="100%" Height="100px" />
</div>

2 个答案:

答案 0 :(得分:0)

使用ASP.NET Image控件加载不同大小的图像应该没有问题,所以我认为问题可能是与实际图像无关的其他问题。你如何比较这两个图像(1MB图像和2MB图像)来确定它是一个尺寸问题?

您发布的代码中没有任何错误。您是否可以通过常规URL访问未通过Web应用程序显示的图像?两个图像都包含在同一目录中的项目中吗?确保在相同条件下使用这两个图像,看看是否得到相同的结果。

编辑:如果你可以将两个图像放在同一个位置并以相同的方式引用它们,唯一的区别是大小那么可能是你的IIS没有提供更大尺寸的图像。尝试直接通过浏览器访问图像,例如http://yourURL/Images/dh_banner.jpg,看看是否可以看到1MB +图像。如果您不能以这种方式看到它,那么IIS就是问题所在。如果你能看到它,那么很可能是你在ASP.NET代码中引用图像的方式。

如果确实是IIS问题,那么此链接应该可以帮助您解决问题:

http://www.iis.net/ConfigReference/system.webServer/security/requestFiltering/requestLimits

答案 1 :(得分:0)

在您的web.config文件中,您应该调整可以渲染的最大文件大小。

以下是我在web.config中更改或添加的2个设置: 在system.web下:

<httpRuntime maxRequestLength="30720" executionTimeout="7200"/>

在System.webServer下输入:

<security>
   <requestFiltering>
    <requestLimits maxAllowedContentLength="31457280"/>
   </requestFiltering>
</security>