Procedura: rilevare tipi di browser in pagine Web ASP.NET
Aggiornamento: novembre 2007
Browser diversi e versioni diverse di uno stesso browser supportano funzionalità differenti. È possibile che nell'applicazione sia necessario determinare il tipo di browser con cui un utente visualizza le pagine o se il browser supporta determinate funzionalità.
Nota: |
---|
ASP.NET può determinare automaticamente le funzionalità del browser e utilizzare queste informazioni per eseguire il rendering dei tag HTML appropriati per i controlli server ASP.NET. Per ulteriori informazioni, vedere Controlli server ASP.NET e funzionalità del browser. |
Per rilevare i tipi di browser in una pagina ASP.NET
Eseguire una query sulla proprietà Browser che contiene un oggetto HttpBrowserCapabilities. Questo oggetto ottiene informazioni dal browser o dalla periferica client durante una richiesta HTTP, indicando all'applicazione il tipo e il livello di supporto offerti dal browser o dalla periferica client. L'oggetto a sua volta espone informazioni sulle funzionalità del browser utilizzando proprietà fortemente tipizzate e un dizionario generico di coppie nome-valore.
Nell'esempio di codice riportato di seguito viene illustrato come visualizzare le informazioni del browser in una casella di testo nella pagina.
Nota: Le proprietà esposte dall'oggetto HttpBrowserCapabilities indicato le funzionalità intrinseche del browser, ma non riflettono necessariamente le impostazioni correnti del browser. Ad esempio, la proprietà Cookies indica se un browser supporta i cookie, ma non indica se per il browser che ha effettuato la richiesta sono stati attivati i cookie. Per ulteriori informazioni, vedere Cenni preliminari sui cookie ASP.NET.
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim s As String = "" With Request.Browser s &= "Browser Capabilities" & vbCrLf s &= "Type = " & .Type & vbCrLf s &= "Name = " & .Browser & vbCrLf s &= "Version = " & .Version & vbCrLf s &= "Major Version = " & .MajorVersion & vbCrLf s &= "Minor Version = " & .MinorVersion & vbCrLf s &= "Platform = " & .Platform & vbCrLf s &= "Is Beta = " & .Beta & vbCrLf s &= "Is Crawler = " & .Crawler & vbCrLf s &= "Is AOL = " & .AOL & vbCrLf s &= "Is Win16 = " & .Win16 & vbCrLf s &= "Is Win32 = " & .Win32 & vbCrLf s &= "Supports Frames = " & .Frames & vbCrLf s &= "Supports Tables = " & .Tables & vbCrLf s &= "Supports Cookies = " & .Cookies & vbCrLf s &= "Supports VBScript = " & .VBScript & vbCrLf s &= "Supports JavaScript = " & _ .EcmaScriptVersion.ToString() & vbCrLf s &= "Supports Java Applets = " & .JavaApplets & vbCrLf s &= "Supports ActiveX Controls = " & .ActiveXControls & _ vbCrLf End With TextBox1.Text = s End Sub
private void Button1_Click(object sender, System.EventArgs e) { System.Web.HttpBrowserCapabilities browser = Request.Browser; string s = "Browser Capabilities\n" + "Type = " + browser.Type + "\n" + "Name = " + browser.Browser + "\n" + "Version = " + browser.Version + "\n" + "Major Version = " + browser.MajorVersion + "\n" + "Minor Version = " + browser.MinorVersion + "\n" + "Platform = " + browser.Platform + "\n" + "Is Beta = " + browser.Beta + "\n" + "Is Crawler = " + browser.Crawler + "\n" + "Is AOL = " + browser.AOL + "\n" + "Is Win16 = " + browser.Win16 + "\n" + "Is Win32 = " + browser.Win32 + "\n" + "Supports Frames = " + browser.Frames + "\n" + "Supports Tables = " + browser.Tables + "\n" + "Supports Cookies = " + browser.Cookies + "\n" + "Supports VBScript = " + browser.VBScript + "\n" + "Supports JavaScript = " + browser.EcmaScriptVersion.ToString() + "\n" + "Supports Java Applets = " + browser.JavaApplets + "\n" + "Supports ActiveX Controls = " + browser.ActiveXControls + "\n"; TextBox1.Text = s; }