несоответствующее значение типа браузера из объекта запроса - PullRequest
2 голосов
/ 06 сентября 2011

Я пишу приложение на C #, в котором мне нужно получить тип браузера пользователя.

Я получаю вышеупомянутое из объекта Request, а именно: Request.Browser.Type, который является членом System.Web..HttpBrowserCapabilitiesBase.

Результат, полученный из этого, не соответствует.Большую часть времени это правильный возврат браузера пользователя, например IE7 и т. Д., Но в нечетное время он возвращает значение «Рабочий стол».Я не понимаю, почему это возвращается, потому что, очевидно, это неправильно, поскольку пользователь посещает веб-сайт через веб-браузер.

Кто-нибудь знает, почему это возвращается и как я могу «исправить» этоили использовать другой способ постоянного получения типа браузера пользователя?

1 Ответ

1 голос
/ 06 сентября 2011

ASP.Net не имеет информации Chrome в своей базе данных, поэтому он не может обнаружить ее автоматически, кроме как сказать «Рабочий стол ...», что на самом деле означает, что это браузер настольного компьютера, а не мобильный браузер. Вы можете возиться с Request.browser.browsers и так далее, и лучшее, что вы получите, это AppleSafari

Однако существуют альтернативы, которые существуют давно и работают для многих.

Вот ссылка на альтернативу, которая должна дать вам возможность обнаружить хром.

http://weblogs.asp.net/ricardoperes/archive/2009/09/22/detecting-chrome-browser-in-asp-net.aspx

...