ASP.NET - 图像未显示

ASP.NET - 图像未显示

问题描述:

我在主页面上放置了图像。ASP.NET - 图像未显示

我在设计时看到图像。

但我在运行时没有看到图像。

可能是什么问题?

我试图将图像放在图像框上。但它也没有效果。

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="MasterPage.master.cs" Inherits="Ice_Web_Portal.UI.MasterPage" EnableTheming="true" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head runat="server"> 
    <title>.::ICE Web Portal::.</title> 
    <link href="App_Themes/SmokeAndGlass/SmokeAndGlass.css" rel="stylesheet" type="text/css" /> 
</head> 
<body > 
    <form id="form1" runat="server"> 
     <table style="position: static"> 
      <tr> 
       <td align="left" colspan="2"> 
        <asp:Image ID="Image1" runat="server" ImageUrl="~/App_Themes/Banner.JPG" /></td> 
       <td> 
       </td> 
      </tr> 
      <tr> 
       <td rowspan="2"> 
        <div> 
        &nbsp;</div> 
        &nbsp;</td> 
       <td style="width: 3px"> 
        <asp:LoginView ID="LoginView1" runat="server"> 
         <LoggedInTemplate> 
          <table style="width: 204px"> 
           <tr> 
            <td> 
             Login Status :</td> 
            <td> 
        <asp:LoginStatus ID="LoginStatus1" runat="server" /> 
            </td> 
            <td> 
            </td> 
           </tr> 
           <tr> 
            <td> 
             Login Name :</td> 
            <td> 
        <asp:LoginName ID="LoginName1" runat="server" /> 
            </td> 
            <td> 
            </td> 
           </tr> 
           <tr> 
            <td> 
            </td> 
            <td> 
            </td> 
            <td> 
            </td> 
           </tr> 
           <tr> 
            <td> 
            </td> 
            <td> 
            </td> 
            <td> 
            </td> 
           </tr> 
          </table> 
         </LoggedInTemplate> 
        </asp:LoginView> 
       </td> 
       <td> 
       </td> 
      </tr> 
      <tr> 
       <td style="width: 3px"> 
        <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"> 
        </asp:ContentPlaceHolder> 
       </td> 
       <td> 
       </td> 
      </tr> 
      <tr> 
       <td> 
        &nbsp;</td> 
       <td style="width: 3px"> 
       </td> 
       <td> 
       </td> 
      </tr> 
     </table> 
    </form> 
</body> 
</html> 
+0

你能否提供一些显示你放置的图像的aspx代码? – Juri 2009-08-24 21:12:16

+0

Plz查看更新。 – anonymous 2009-08-24 21:18:11

+2

输出HTML是什么样的? – JamesMLV 2009-08-24 21:31:34

这听起来像你可能有某种形式的URL映射问题...对于ImageUrl属性尝试将其设置为“〜/图片/ MyImage.png” ...

相反比直接在App_Theme文件夹中存储图像,为图像创建一个文件夹,并尝试使用它。 App_Theme目录的处理方式不同...

+1

我使用过这种'〜/ App_Themes/Banner.JPG'。 – anonymous 2009-08-24 21:16:32

+0

现在我有一个新问题。所有页面都显示横幅。除了Default.aspx页面。 – anonymous 2009-08-24 21:22:09

+0

什么是所有页面的文件夹结构? – RSolberg 2009-08-24 21:29:06

对我来说这听起来像是 Relative Paths in Master Pages的问题。解决方案是tilda(〜)字符,它表示根文件夹,无论内容页位于何处。

我只是测试你的代码,它为我工作。

您是否使用多个Web浏览器试过它? (缓存问题可能?)
你是否在代码隐藏中操纵图像?

+0

Plz查看更新。 – anonymous 2009-08-24 21:18:49

这是一个相对路径的问题,你的样式更改为:

<link href="~/App_Themes/SmokeAndGlass/SmokeAndGlass.css" rel="stylesheet" type="text/css" runat="server"/> 

Hmm..seems是完全正常的。你有没有尝试使用正常的HTML标签,如

<img src="<sourceToImage>/App_Themes/Banner.JPG"/> 

..只是看看是否有效。

另一个问题可能是大写的“JPG”的扩展名(虽然我不知道这是否真的很重要)。

检查您的样式表是否对图像执行一些操作。

我认为你的图像文件不能在运行时访问。

只需将此代码粘贴到您的web.config文件中,即可显示图像。

<?xml version="1.0" encoding="utf-8"?> 
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"> 
<system.web> 
<authorization> 
<allow users="*" /> 
</authorization> 
</system.web> 
</configuration> 

简单。

  1. 在您的Project文件夹中创建一个文件夹Images
  2. 将你的图片,例如logo.jpg,在Images文件夹内
  3. 返回到您的项目,在您的图像属性中提供相对路径,即您的ImageURL,作为~\Images\hlogo.jpg。然后

图像将在Web浏览器中显示。

我有同样的问题,它是权限,只是检查显示在Web窗体中的图像,并将相同的权限复制到IMG不显示。

在IIS 7中安装ASP.NET模块时,默认情况下不会安装静态内容。您需要进入程序和功能,然后点击“打开或关闭Windows功能”。

在IIS部分下,深入了解WWW服务,常见Http功能,并检查“静态内容”。

没有这个CSS,图像,HTML和其他非动态内容不会显示出来。

我知道这是一个很长一段时间的问题,但我现在碰巧看到它,我想我该如何解决我的挑战,与大家分享:

只需更换娄代码在你的web.config,并把图像如图所示

<location path="Image Path"> 
 
    <system.web> 
 
    <authorization> 
 
    <allow user="*"/> 
 
    </authorization> 
 
    </system.web> 
 
    </location>

希望它能帮助

我有一个类似的问题,无线路径我的VB.NET应用程序在2012 R2上使用IIS 8.5。我必须在IIS 8.5中将我的图像扩展名(.jpg,.png)专门添加到我的默认网站的“请求筛选”中。