6

我使用 asp.net web developer 2010 开发了一个网站。如果从移动浏览器访问该网站,我想重定向到不同的页面。并且,为 windows/mac/linux 等用户提供不同的功能。

我怎样才能做到这一点?

我在一些论坛上引用了一些帖子,据说我需要依赖第三方库。

如果没有任何第三方库,我怎么能实现这个?

任何人请帮帮我。

任何帮助表示赞赏。谢谢!!

4

2 回答 2

7

Request.Browser 对象属性可能就在它所在的位置,这些都是可能对您有用的选项:

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

您是否有理由要避免使用第 3 方组件?

我们目前通过 51Degrees.mobi 使用 WURFL 设备数据库——效果非常好。

于 2013-11-05T11:57:41.527 回答
1

您可以在 asp.net 中使用 useragent 来验证请求是来自移动设备还是桌面设备。

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);
            }
        }
于 2013-11-05T11:47:04.970 回答