我们最近将服务器从.NET 4.0 Framework更新到.NET 4.5 Framework。在更新之前,一切正常。更新后,似乎ASP:Image标签和ASP:ImageButton标签以及runat =“server”的任何其他图像都显示为损坏的图像。
我已经弄清楚为什么它们会显示为损坏的图像,一旦将它生成为HTML,src属性就不会被添加到img标记中,我遇到的问题是弄清楚为什么会发生这种情况。 / p>
相关代码如下:
ASP:
<asp:imagebutton id="btnAdmin" Runat="server" ImageUrl="images/nav_b4.gif" Height="35" Width="79" CommandName="admin" AlternateText="Admin"></asp:imagebutton>
生成的HTML
<input type="image" name="btnAdmin" id="btnAdmin" onmouseout="tidyMenu(event);" onmouseover="openMenu(event,'nav_b4',1,5681366,16777215);setGraphic(event,'images/nav_b4_over.gif');return false;" alt="Admin" style="height:35px;width:79px;">
稍后通过JavaScript插件附加onMouseOver和onMouseOut事件,但这似乎对图像的实际处理没有影响。事实上,如果我将鼠标悬停在按钮上,图像就会出现,因为这就是JavaScript正在做的事情,显示不同的图像以进行悬停。
我想值得注意的是,即使是最基本的<ASP:Image>
标签也会发生这种情况:
<asp:Image ImageUrl="images/j0285247.gif" runat="server" ID="leftIcon" />
就会显示
<img id="leftIcon">
不幸的是,这是我们正在使用的一些遗留代码所以它非常难看但我只需要使用.NET 4.5并且我迷失了为什么src属性没有附加到img标签基于ASP标记中的ImageUrl属性。
我们尝试了一些简单的事情,例如在ImageUrl路径的前面添加~/
,但这没有帮助,因为我认为它与实际路径不太相关,而是更多地与某些事情有关.NET 4.5不支持.NET 4.0。
如果有人有任何想法,那就太棒了。
谢谢。
答案 0 :(得分:2)
管理我们服务器的人错误地安装了.NET 4.5 Beta,经过大量探索,我们发现了。在我们联系他让他解决问题之后,一旦安装了.NET 4.5生产版本,图像就会再次运行。