Как определить мобильный браузер в приложении .NET MVC3 - PullRequest
44 голосов
/ 08 марта 2011

Я занимаюсь разработкой приложения .NET MVC3.

Есть ли хороший способ определить, использует ли пользователь мобильный браузер в представлении (используя RAZOR).Я хочу изменить логику отображения, если это мобильный браузер.

Спасибо!

Ответы [ 3 ]

69 голосов
/ 08 марта 2011

MVC3 предоставляет флаг IsMobileDevice в объекте Request.Browser.

Таким образом, в вашем коде бритвы вы можете запросить эту переменную и отобразить соответственно.

Например, на ваш взгляд (бритва):

@if (Request.Browser.IsMobileDevice) {
  <!-- HTML here for mobile device -->
} else {
  <!-- HTML for desktop device -->
}
21 голосов
/ 09 марта 2011

Встроенные возможности обнаружения в браузере больше не обновляются.Взгляните на блог Скотта Хансельмана - подробности см. В разделе «Больше впереди» внизу.

Из этой статьи:

С тех порpost, команда Live.com в Ирландии, которая выпустила и поддержала оригинальный файл браузера мобильных устройств (MDBF), прекратила его производство.Наилучшим источником данных для мобильных браузерных устройств является WURFL (это было одно из мест, откуда MDBF извлек).

Я предлагаю взглянуть на 51Degrees.mobi для более точного обнаружения.Также см. блог Стива Сандерсона , на который ссылается Хансельман, как реализовать это в MVC3.

0 голосов
/ 27 мая 2016

Я использую этот метод (отлично работает для меня)

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");
}

Я предлагаю вам использовать что-нибудь адаптивное при начальной загрузке, лучше избегать определенной страницы для мобильного телефона

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...