Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
696
Assunto : ASP.NET
Titulo: Identificando corretamente os recursos dos browsers client

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



Alguns WebControls checam diretamente os recursos de que o browser dispõe (browserCapabilities) para decidir a forma com que irão se renderizar.

Ocorre que a informação de BrowserCapabilities é preenchida pelo ASP.NET e nem sempre o ASP.NET consegue reconhecer corretamente o browser do client. Encontrei relatos de problemas com o FireFox, por exemplo.

Para resolver estes casos precisamos atualizar o web.config com um elemento chamado browsercaps. Através deste elemento podemos configurar o ASP.NET para reconhecer novos browsers e indicar ao ASP.NET os recursos disponíveis nestes novos browsers.

Veja um exemplo :

<browserCaps>
<!-- NETSCAPE 6 & 7 -->
<case match="^Mozilla/5\.0 \([^)]*\) (Gecko/[-\d]+ )?Netscape[6|7]/(?'version'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*)).*">
tagwriter=System.Web.UI.HtmlTextWriter browser=Netscape version=${version} majorversion=${major} minorversion=${minor} frames=true tables=true cookies=true javascript=true javaapplets=true ecmascriptversion=1.5 w3cdomversion=1.0 css1=true css2=true xml=true
<filter match="^b" with="${letters}">beta=true</filter>
</case>

<!-- MOZILLA -->
<case match="^Mozilla/(?'version'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*)).*">css1=true
<!-- is this negating? confirm -->
<case match="^[5-9]\." with="${version}">css2=true tagwriter=System.Web.UI.HtmlTextWriter</case>
</case>

<!-- OPERA 5+ -->
<case match="Opera[ /](?'version'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*))">
browser=Opera version=${version} majorversion=${major} minorversion=${minor} frames=true tables=true cookies=true javascript=true ecmascriptversion=1.1
<filter match="[4-9]" with="${major}">ecmascriptversion=1.3 css1=true css2=true xml=true
<filter match="[5-9]" with="${major}">tagwriter=System.Web.UI.HtmlTextWriter w3cdomversion=1.0</filter>
</filter>
<filter match="^b" with="${letters}">beta=true</filter>
</case>
</browserCaps>

Observem como são utilizadas expressões regulares para fazer a identificação do browser. A configuração acima deve ser inserida dentro do System.Web, no Web.Config. Porém, também é possível inseri-la no machine.config de um servidor web, desta forma ela passa a estar ativa em todos os sites deste servidor - tai uma boa dica para provedores.

Podem ver outros exemplos em http://slingfive.com/pages/code/browserCaps/


Esta dica foi montada com base em uma publicação no blog de Fabricio Ferreira (http://br.thespoke.net/BlogReader/SingleEntry.aspx?ID=8962) que por sua vez se baseou em uma dica de Fábio Batista publicada no grupo CodeKnights


Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 10/14/2016 7:13:00 PM
nome: gvjHJFLrvxvBrH
email: jimos4581rzt@hotmail.com
comentário:
83rMI8 http://www.FyLitCl7Pf7kjQdDUOLQOuaxTXbj5iNG.com

data: 10/14/2016 6:38:00 PM
nome: tDYuDvaoeuiYnqHxZ
email: jimos4581rzt@hotmail.com
comentário:
TQfkLO http://www.FyLitCl7Pf7kjQdDUOLQOuaxTXbj5iNG.com

data: 8/12/2016 8:41:00 PM
nome: lnfQLBFyXRMpsRUD
email: jimos4581rt@hotmail.com
comentário:
IoSA5v http://www.FyLitCl7Pf7kjQdDUOLQOuaxTXbj5iNG.com

data: 8/9/2016 4:41:00 PM
nome: aVFmYMLiXSKGrUg
email: jimos4581rt@hotmail.com
comentário:
BgGIBS http://www.FyLitCl7Pf7kjQdDUOLQOuaxTXbj5iNG.com

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br