Как узнать, если asp.net доступ к сайту осуществляется с мобильного устройства или из системы / ноутбука / компьютера (windows, mac и т. д)


Я разработал веб-сайт с использованием asp.net веб-разработчик 2010. Я хотел бы перенаправить на другую страницу, если сайт доступен из мобильного браузера. И, различные функциональные возможности для пользователей windows / mac / linux и т.д.

Как я могу это сделать?

Я ссылался на некоторые сообщения на некоторых форумах, и там говорится, что мне нужно зависеть от сторонних библиотек.

Как я мог бы реализовать это без каких-либо сторонних библиотек?

Кто - нибудь, пожалуйста, помогите мне.

Любая помощь это ценится. Спасибо!!

2 5

2 ответа:

Просьба.Свойства объекта браузера, вероятно, там, где он находится, это все опции, которые могут быть полезны для вас:

Request.Browser.IsMobileDevice
Request.Browser.MobileDeviceManufacturer
Request.Browser.MobileDeviceModel
Request.Browser.ScreenPixelsWidth
Request.Browser.SupportsXmlHttp

Была ли причина, по которой вы хотели избежать компонента третьей стороны?

В настоящее время мы используем базу данных устройств WURFL через 51Degrees.mobi - что очень хорошо работает.

Вы можете использовать useragent в asp.net для проверки запрос поступает с мобильного или настольного компьютера.

protected override void OnInit(EventArgs e)
        {
            string userAgent = Request.UserAgent;
            if (userAgent.Contains("BlackBerry")
              || (userAgent.Contains("iPhone") || (userAgent.Contains("Android"))))
            {
                //add css ref to header from code behind
                HtmlLink css = new HtmlLink();
                css.Href = ResolveClientUrl("~/mobile.css");
                css.Attributes["rel"] = "stylesheet";
                css.Attributes["type"] = "text/css";
                css.Attributes["media"] = "all";
                Page.Header.Controls.Add(css);
            }
        }