THE Fastest and Most Accurate Device Detection
Recent Changes | Supported Databases | .NET Developer Documention | Available Properties | Support Forum
Upgrading from version 3.1 or lower? - Important Change
The embedded free Lite device data has been removed from the assembly and by default placed in the App_Data folder for both web and non-web projects. The solution will not work without the associated data file being provided. The WebProvider.ActiveProvider property can now return null.
Get Started
Server Side: Use code like...
Request.Browser["IsMobile"]
or
Request.Browser["IsTablet"]
... from within a web application server side to determine the requesting device type.
Client Side: Include...
https://[YOUR DOMAIN]/51Degrees.features.js?DeviceType&ScreenInchesDiagonal
... from Javascript to retrieve device type and physcial screen size information. Use Google Analytics custom dimensions to add this data for more granular analysis.
Offline: Use...
var detectionProvider = new Provider(StreamFactory.Create("[DATA FILE LOCATION]"));
var deviceType = detectionProvider.Match("[YOUR USERAGENT]")["DeviceType"];
... to perform offline analysis of web logs with User-Agent headers.
Compare Device Databases
Review All Properties
Recent Changes
Version 3.2.5 Highlights
- Embedded data has been removed from the assembly and now must be provided from the App_Data folder.
- .NET 3.5 is not supported in this release in order to use memory mapped files and simplify overriding default browser capabilities.
- In stream mode entity data properties that can allocate large arrays only initialise these arrays when needed.
- Caches used with stream operation are now fixed memory size and serviced via the thread pool.
- Automatic update processes uses temporary files rather than main memory to verify integrity of updated files prior to using them.
- Temporary files are now created in the App_Data/51Degrees folder of the web application rather than a UNC path or the master data file folder.
- Values associated with Profiles are now retrieved using a more efficient algorithm.
- DataSet.Properties collection now has a string accessor to make retrieving properties by name simpler.
- Web sites using memory mode use a byte array to improve start up time.
- Version 3.2 data file formats are supported in parallel with version 3.1 data files.
- 51Degrees unit tests are now part of the open source distribution.
- Improvements to image optimiser to reduce memory consumption and performance.
Changes from 3.2.4
- The SQL project now works as expected with the 3.2 device detection logic.
- Methods used to retrieve property values from Profiles and Signatures have been made clearer, memory use reduced and performance improved further.
- Automatic data file updates explicitly refresh file status during the update in case .NET did not do this automatically. Avoids a possible cause of automatic update failure.
- Automatic data file updates bug fixed, if temporary folder does not exist, it is created. And ensures that subsequent updates operations can occur.
- GetProperty method now marked as deprecated.
See GitHub commit history for changes details and earlier versions.