Request.Browser.Platform not returning iPad, OSX, or Windows7

Chase Florell picture Chase Florell · Jun 6, 2010 · Viewed 9.4k times · Source

I'm working on some advanced browser detection, and I've downloaded the MDBF browser file from CodePlex.

Unfortunately my Request.Browser.Platform, along with a few other things is returning "Unknown" on both my iPad Mac OSX (Snow Leopard) and on Windows7

Does anyone know of a good advanced .browser file out there that does the same thing for non mobile devices as the MDBF does for mobile devices?

Answer

Anthony Serdyukov picture Anthony Serdyukov · Apr 7, 2011

I've solved my particular issue (detecting iPad) with the following file in my application's App_Browsers folder:

<browsers>
  <!-- Mozilla/5.0 (iPad; U; CPU OS 4_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8C134 Safari/6533.18.5 -->
  <gateway id="IPad" parentID="Safari">
    <identification>
      <userAgent match="iPad" />
    </identification>

    <capabilities>
      <capability name="mobileDeviceModel"               value="IPad" />
      <capability name="mobileDeviceManufacturer"        value="Apple" />
      <capability name="isMobileDevice"                  value="true" />
    </capabilities>
  </gateway>
</browsers>

Then in the code I test:

if (Request.Browser.MobileDeviceModel == "IPad")
  ...