This step-by-step article demonstrates how to determine the client browser type in server-side code without using the BrowserType
object in ASP.NET.
In classic Microsoft Active Server Pages (ASP), the two most common methods to determine the client browser type are to use the BrowserType
component or the Request.ServerVariables("HTTP_USER_AGENT")
variable. Although you can use these methods in ASP.NET, you can also use the new properties that ASP.NET provides. In ASP.NET, the Request
object includes a property named Browser
: This article assumes that you have ASP.NET and Visual Studio .NET installed on your computer.back to the top Using the HTTP_USER_AGENT Header to Determine the Browser Version
In ASP.NET, you can access the Request.ServerVariables
collection or use the new Request.UserAgent
property to retrieve the HTTP_USER_AGENT header value. You can parse this string to determine the browser name, the major and minor versions of the browser, and if the browser is a beta release.
The following list includes two sample user agent strings:
- When you browse with Microsoft Internet Explorer 6.0 Beta, you may receive a user agent string similar to the following:
User Agent :: Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.1; .NET CLR 1.0.2914)
- When you browse with Internet Explorer 5.5, you may receive the following user agent string:
User Agent :: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
For more information about parsing the User Agent variable, click the following article number to view the article in the Microsoft Knowledge Base:
272413back to the top Using the Request.Browser Object to Determine the Browser Version
How to determine browser type in server-side script without the BrowserType object
In ASP.NET, the Request
object contains a property named Browser
that returns an object of type HttpBrowserCapabilities
. This object contains properties such as browser, version, major version, and minor version that you can use to determine the client browser type.
Follow these steps to create a simple ASP.NET application using Visual Basic .NET that writes the browser name and versions back to the client browser in HTML:
back to the top
- From the Start menu, point to Programs, point to Microsoft Visual Studio.NET, and click Microsoft Visual Studio.NET.
- Click New Project.
- In the New Project dialog box, under Project Type, click Visual Basic Projects. Under Templates, click ASP.NET Web Application. In the Name text box, type a name for the application.
- Double-click in the Design window of Webform1.
- Replace the code for the Page_Load event with the following code:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles MyBase.Load Response.Write("<B>User Agent ::</B> " & Request.UserAgent & "<BR>") Response.Write("<B>Browser ::</B> " & Request.Browser.Browser & "<BR>") Response.Write("<B>Version ::</B> " & Request.Browser.Version & "<BR>") Response.Write("<B>Major::</B> " & Request.Browser.MajorVersion() & "<BR>") Response.Write("<B>Minor::</B> " & Request.Browser.MinorVersion() & "<BR>") End Sub
- Press the CTRL+S key combination to save the file.
- On the Build menu, click Build.
- After the build is complete, either click Start, or right-click Webform1.aspx in Solution Explorer, and then click View in Browser.
- In the browser window, notice that the User Agent string appears and includes the browser name, version, major versions, and minor versions.