Diferentes browsers e em suas diferentes versões possuem suporte a características e recursos diferentes. Em seu aplicativo web, site e/ou blog, pode precisar detectar que tipo de navegador (browser) do usuário para, talvez, determinar se o navegador oferece suporte a determinados recursos.
A Microsoft por meio do framework .net permite com que o ASP.NET possa determinar automaticamente os recursos do navegador para que essas informações sejam usadas para processar o código HTML correto na renderização de controles de servidor existentes no ASP.NET.
Classe HttpBrowserCapabilities
ASP.NET possui a classe HttpBrowserCapabilities,que reúne informações sobre os recursos do navegador do cliente durante a solicitação HTTP ao aplicativo web, da propriedade HttpRequest.Browser, e com isso retorna ao aplicativo informações dos recursos suportados pelo navegador (browser) e também é possível detectar informações, tais como, nome, versão e também se é mobile.
Veja aseguir algumas propriedades disponíveis no HttpRequest.Browse
- ActiveXControls Obtêm um valor indicando se o browser suporta controles ActiveX.
- AOL Obtêm um valor indicando se o browser do Cliente é um browser da America OnLine.
- Browser Obtêm a string do browser que é transmitida no cabeçalho User-Agent e serve para identificar o browser .
- ClrVersion Obtêm o número da versão da CLR .NET instalada no cliente
- Cookies Obtêm um valor indicando se o browser suporta Cookies.
- JavaApplets Obtêm um valor indicando se o browser suporta JavaApplets.
- JavaScript Obtêm um valor indicando se o browser suporta JavaScript.
- Plataform Obtêm o nome da plataforma que o browser usa.
- Frames Obtêm um valor indicando se o Browser do Cliente suporta Frames.
- Tables Obtêm um valor indicando se o browser suporta Tabelas.
- VBScript Obtêm um valor indicando se o browser suporta VBScript.
- Version Retorna o número da versão do browser .
Para ter acesso a lista completa das propriedades disponíveis da classe HttpBrowserCapabilities, clique aqui.
Como Detectar o Tipo de Browser no Aplicativo Web
System.Web.HttpBrowserCapabilities browser = Request.Browser;
string.Format(@"Navegador:{0} ({1}), versão:{2}, Mobile:{3}, CSS:{4}, versão javascript{5}"
,browser.Browser
,browser.Platform
,browser.Version
,browser.IsMobileDevice
,browser.EcmaScriptVersion.ToString()
,browser.SupportsCss);
Outras Propriedades de Recursos do Navegador
System.Web.HttpBrowserCapabilities browser = Request.Browser;
string.Format(@"Beta={0}, Crawler={1}, AOL={2}, Win16={3}, Win32={4},
Suporta Frame={5}, Suporta Tabla={6}, Suporta Cookies={7}, Suporta VBScript={8}, Suporta Java Applets={9}, Fabricante do Equipamento Mobile={10}, Modelo do Equipamento Mobile={11} e entre outros."
, browser.Beta
, browser.Crawler
, browser.AOL
, browser.Win16
, browser.Win32
, browser.Frames
, browser.Tables
, browser.Cookies
, browser.VBScript
, browser.JavaApplets
, browser.MobileDeviceManufacturer
, browser.MobileDeviceModel);
Para testar os códigos acima, clique aqui para efetuar download de uma solução de exemplo.
Definição do Schema para o Arquivo Browser
A definição do schema para o arquivo browser contêm definições para navegadores individuais e são armazenadas no seguinte caminho: %SystemRoot%\Microsoft.NET\Framework\numeroVersao\Config\Browsers
Em tempo de execução, o ASP.NET usa as informações no cabeçalho da requisição para determinar o tipo de navegador que fez a solicitação. Em seguida, o ASP.NET usa arquivos .browser para determinar os recursos do navegador.
Referencias
- ASP.NET – Detectando as capacidades do Navegador
- Controles de servidor Web do ASP.NET e recursos do navegador
- How to: Detect Browser Types and Browser Capabilities in ASP.NET Web Pages
- COMO: Determinar a versão de navegador no ASP.NET
- Classe HttpBrowserCapabilities
- Browser Definição Arquivo Schema (browsers Element)
Incrivel artigo
bom saber que temos mais uma grande ferramenta
para podermos desenvolver
Adorei meus amigos
Att,
Cornélio José Wiedemann ( TI & DBA )