Вы можете расширить HttpBrowserCapabilities, добавив / расширив раздел конфигурации browserCaps в вашем файле machine.config / web.config.Например, для более точного определения версии ОС добавьте что-то вроде этого в ваш файл конфигурации:
<system.web>
<browserCaps>
<use var="HTTP_USER_AGENT" />
<filter>
<case match="Windows NT 6.1">
platform=Windows7
</case>
</filter>
</browserCaps>
</system.web>
Если вы заходите на веб-сайт с Mozilla, работающей в Windows 7 (UserAgent = "Mozilla / 5.0 (WindowsNT 6.1; WOW64; rv: 2.0.1) Gecko / 20100101 Firefox / 4.0.1 ") вы увидите, что Request.Browser.Platform отобразит" Windows7 ".См. Здесь для получения дополнительной информации: http://msdn.microsoft.com/en-us/library/sk9az15a%28v=vs.71%29.aspx
Добавьте регулярное выражение в разделе browserCaps, чтобы соответствовать строке WOW64, чтобы определить, является ли клиентская платформа 64-битной (я не уверен, что WOW64-эквивалентдля платформ, отличных от Windows, работающих на 64-битной платформе.)
... Конечно, используя регулярное выражение в элементе, вы ничего не делаете, кроме собственно парсинга строки UserAgent.Тем не менее, вы можете легко найти предопределенные browseCaps в Интернете (например, http://owenbrady.net/browsercaps/CodeProject.xml).
. Имейте в виду, что, хотя эта возможность довольно мощная, она все же не на 100% точна. Например, как Windows 7, так и Windows Server2008 R2 вернет Windows NT 6.1 в качестве платформы.