Compatibilidad IE8, solución rápida a corto plazo.

Este documento le guiará por los pasos para corregir su sitio y conseguir que se represente correctamente en Windows Internet Explorer 8.

La solución rápida a corto plazo

Usted mantiene una página web que funciona correctamente en Windows Internet Explorer 7 y desearía actualizarla para que funcione en Windows Internet Explorer 8 pero con el menor número de modificaciones posible. Hay dos métodos posibles. Puede añadir una etiqueta META de modo de compatibilidad a cada página, lo que obligará a Windows Internet Explorer 8 a representar la página de manera similar a Windows Internet Explorer 7. O bien, si controla su servidor web, puede hacer que éste aporte la compatibilidad automáticamente configurándolo para que envíe con cada página web un encabezado de respuesta HTTP personalizado equivalente a la etiqueta META.

Cómo modificar cada página

Coloque la siguiente etiqueta META HTML en el elemento HEAD de cada página web (antes que las demás etiquetas, a excepción de TITLE o META):

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/> 

Ésta indica a Windows Internet Explorer 8 que debe representar cada página del modo en que lo haría Windows Internet Explorer 7, corrigiendo el sitio web.

Cómo configurar el servidor para modificar cada página automáticamente

Para configurar Microsoft Internet Information Services (IIS) 7.0, configure el archivo Web.config de la siguiente manera:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
   <system.webServer>
      <httpProtocol>
         <customHeaders>
            <clear />
            <add name="X-UA-Compatible" value="IE=EmulateIE7" />
         </customHeaders>
      </httpProtocol>
   </system.webServer>
</configuration>

Referencia: http://msdn.microsoft.com/es-es/library/cc817570.aspx

The data could not be loaded

Existen muchos post en los fórums de Componentart.com que hacen referencia a este mensaje de error "The data could not be loaded" en mi caso se daba en el siguiente escenario:

Un Grid que se ejecuta en modo Callback y en tiempo de diseño asignamos a la propiedad Visible="false"

<ComponentArt:Grid ID="grdListado" 
                    Runat="server" 
                    RunningMode="callback" 
                    Visible="false" 
</ComponentArt:Grid> 

Cuando la página que contiene el Grid realiza el postback ponemos el Grid visible del lado del servidor

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack && !grdListado.CausedCallback)
    {
        grdListado.Visible = true;
    }
}

después del postback y para mi sorpresa, al paginar los datos se mostraba el mensaje de error siguiente:

He quitado este mensaje de error haciendo lo siguiente:

protected void grdListado_OnBeforeCallback(object sender
                                            , EventArgs e)
    {
        if (!grdListado.Visible)
        {
            grdListado.Visible = true;
        }
    }

Por qué el Callback no mantiene el estado de esta propiedad¿? Es un punto negro que aún no he podido resolver.

Bienvenido

Bienvenido a este pequeño espacio donde dedicaré unas líneas a la solución de cada problema en mi hacer diario con la tecnología .Net, espero que “Gurukula .Net” sea un espacio más donde todos podamos encontrar el color claro de nuestros puntos negros.