Как определить мобильный браузер в приложении .NET MVC3
Я разрабатываю приложение .NET MVC3.
Есть ли хороший способ определить, использует ли пользователь мобильный браузер в представлении (используя RAZOR).
Я хочу различать логику отображения, если это мобильный браузер.
Спасибо!
Ответы
Ответ 1
MVC3 предоставляет флаг IsMobileDevice в объекте Request.Browser.
Таким образом, в вашем коде бритвы вы можете запросить эту переменную и сделать соответственно.
Например, на ваш взгляд (бритва):
@if (Request.Browser.IsMobileDevice) {
<!-- HTML here for mobile device -->
} else {
<!-- HTML for desktop device -->
}
Ответ 2
Встроенные возможности обнаружения браузера больше не обновляются. Взгляните на блог Скотта Ханзельмана - подробнее см. Раздел "Подробнее" внизу.
Я предлагаю взглянуть на 51Degrees.mobi для более точного обнаружения. Также см. Блог Steve Sanderson, который упоминает Hanselman о том, как реализовать это в MVC3.
Ответ 3
Я использую этот метод (отлично работает для меня)
if (eDurar.MobileDetect.DeviceType.Any(m => Request.UserAgent.Contains(m)))
{
Layout = "~/Views/Shared/_mobileLayout.cshtml";
@Html.Partial("mobileIndex");
}
else
{
Layout = "~/Views/Shared/_Layout.cshtml";
@Html.Partial("desktopIndex");
}
Я предлагаю вам использовать отзывчивую загрузочную загрузку, лучше избегая специальной страницы для мобильных устройств