jueves, 26 de marzo de 2009

Los navegadores y ASP.Net

Muchas de las veces cuando desarrollamos aplicaciones bajo ASP.Net surgen muchas inquietudes y problemas ya que se piensa en los tipos de navegadores que el cliente puede usar, algunos prefieren IE, otros Mozilla Firefox, Safari y los más exóticos Crome y es cuando los desarrolladores tienen que elaborar las aplicaciones para que se auto configuren dependiendo del navegador, algunos prefieren escribir código ya sea C# o VB.Net algo como esto:

if (Request.Browser.Browser == "IE")
Label1.Text = "usted usa internet explorer como navegador";
else
Label1.Text = "Usted usa un navegador que no es IE";

El problema de esto es que tiene que ejecutarce en el servidor, y como ya sabran hay que optimizar el uso del servidor cuando se tenga que generar un determinado tipo de etiqueta para ser usado en un determinado tipo de cliente.

Tomando como ejemplo del código anterior, se podría presentar el siguiente ejemplo, supongamos que tenemos una aplicación web en la que los clientes deban usarla a través de IE ya que en otros navegadores surge inconvenientes por determinadas cuestiones ya sean javascripts hojas de estilos, etc., el desarrollador común optaría por escribir algo asi:

if (Request.Browser.Browser != "IE")
{
Label1.Text = "usted NO usa internet explorer como navegador";
Button1.Enabled = “false”;

}

Esto se podría eliminar usando únicamente código ASP empecemos examinando el código ASP de un Label

<asp:Label ID="Label1" runat="server"
Text="Aquí se escribe el texto OK" >
</asp:Label>

Como podemos observar se maneja un estilo de etiquetas que representan propiedades del constrol, como el ID que representa el identificador del control, el Text el cual es una propiedad para definir una cadena de caracteres.

Muy bien una vez que entendieron lo anterior examinemos el siguiente codigo

<asp:Label ID="Label1" runat="server" Text=""
ie:Text="Usted esta usando Internet Explorer"
mozilla:Text="Usted esta unsando Mozilla Firefox" >
</asp:Label>

Como podemos observar en la 2da, 3era y 4ta linea tenemos la propiedad TEXT en la segunda linea si nos fijamos esta el nombre de la propiedad antepuesto IE y MOZILLA (los cuales hacen referencia a Internet Explorer y Mozilla) esto le indicara al ASP que identifique el tipo de navegador y presente la que corresponder si ejecutamos el codigo podemos ver el resultado

Usted está usando Internet Explorer (en el caso de que su navegador sea IE)

No solo se puede hacer lo anterior para definir un tipo de texto, tambien se puede usar para otras propiedades si no me creen miren el siguiente codigo

<asp:Label ID="Label1" runat="server"
Text=""
ie:Text="IE"
mozilla:Text="Firefox"
ie:BackColor="Blue"
mozilla:BackColor="Red"
>

</asp:Label>

Y el resultado es

Si deseamos usarlo en otro tipo de control como un Button podemos hacerlo y para muestra el ejemplo

<asp:Button ID="Button1" runat="server"
Text="Button"
ie:Text="Internet Explorer"
mozilla:Text="Mozilla Firefox"
ie:Enabled="false"
mozilla:Enabled="true"
ie:BackColor="Orange"

/>

Espero que les sea de ayuda

1 comentario:

rc dijo...

Buen tutorial muchas gracias! :):):):):):)

 
Made in Loja, Ecuador