2009-08-24 20 views
5

He colocado una imagen en la página maestra.ASP.NET - La imagen no se muestra

Veo la imagen en tiempo de diseño.

Pero no veo la imagen en tiempo de ejecución.

¿Cuál puede ser el problema?

He intentado colocar la imagen en un cuadro de imagen. Pero tampoco funcionó.

<%@ 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

¿podría proporcionar algún código aspx que muestre la imagen que colocó? – Juri

+0

Plz ver la actualización. – anonymous

+2

¿Cómo se ve el resultado HTML? – JamesMLV

Respuesta

8

Parece que usted puede tener un problema de asignación de dirección URL de algún tipo ... Para el ajuste a "~/Imágenes/MyImage.png" intento propiedad ImageURL ...

vez que almacenar una imagen directamente en la carpeta App_Theme, crea una carpeta para las imágenes e intenta usarla en su lugar. El directorio App_Theme se maneja de manera diferente ...

+1

He usado así '~/App_Themes/Banner.JPG'. – anonymous

+0

Ahora tengo un nuevo problema. Todas las páginas muestran el banner. Excepto la página Default.aspx. – anonymous

+0

¿Cuál es la estructura de carpetas para todas las páginas? – RSolberg

2

Parece un problema con Relative Paths in Master Pages para mí. La solución es el carácter tilda (~), que significa la carpeta raíz independientemente de dónde resida la página de contenido.

Acabo de probar su código y funcionó para mí.

¿Lo has probado usando múltiples navegadores web? (¿un problema de almacenamiento en caché quizás?)
¿Está manipulando la imagen en el código subyacente?

+0

Plz ver la actualización. – anonymous

1

Es un problema de ruta relativa, cambiar su estilo para:

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

Hmm..seems a estar perfectamente bien. ¿Intentó utilizar etiquetas HTML normales como

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

... solo para ver si eso funciona.

Otro problema podría ser la extensión "JPG" MAYÚSCULA (aunque no sé si eso realmente importa).

Compruebe si su hoja de estilo realiza algunas operaciones sobre las imágenes.

2

Creo que sus archivos de imagen no están accesibles en tiempo de ejecución.

Simplemente pegue este código en su archivo web.config y se mostrarán las imágenes.

<?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> 
0

Simple.

  1. Cree una carpeta Images dentro de su carpeta Project.
  2. Coloque su imagen, por ejemplo, logo.jpg, dentro de la carpeta Images
  3. De vuelta a su proyecto, en sus Propiedades de imagen, proporcione la ruta relativa, es decir, su ImageURL, como ~\Images\hlogo.jpg.

Su imagen se mostrará en el navegador web.

0

tuve el mismo problema, era permisos, simplemente marque las imágenes que aparecen en el formulario web y copie los mismos permisos para que la img no se muestre.

0

En IIS 7 cuando instala los módulos ASP.NET, el contenido estático no se instala de forma predeterminada. Tendrá que acceder a programas y características, luego "Activar o desactivar las características de Windows".

En la sección de IIS, profundice en los servicios de WWW, funciones de Http común y compruebe "Contenido estático".

Sin ese css, las imágenes, html y otros contenidos no dinámicos no se mostrarán.

0

Sé que esto es una cuestión de tiempo largo, pero da la casualidad de ver ahora, quiero compartir con todos ustedes cómo puedo solucionar desafío mío:

Basta con sustituir el código abajo en su web.config y poner la imagen camino que ilustra

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

espero que ayude

0

que tenían un problema similar wi la aplicación VB.NET que usa IIS 8.5 en 2012 R2. Tengo que agregar específicamente mis extensiones de imagen (.jpg, .png) a 'Solicitar filtrado' para mi sitio predeterminado en IIS 8.5.

Cuestiones relacionadas