我使用asp.net web developer 2010开发了一个网站。如果从移动浏览器访问该网站,我想重定向到不同的页面。而且,windows / mac / linux等用户的功能也不同。
我该怎么做?
我在一些论坛中提到了一些帖子,据说我需要依赖第三方库。
如何在没有任何第三方库的情况下实现此目的?
任何人请帮助我。
感谢任何帮助。谢谢!
答案 0 :(得分:6)
Request.Browser对象属性可能就在它所在的位置,这些都是可能对您有用的选项:
Request.Browser.IsMobileDevice
Request.Browser.MobileDeviceManufacturer
Request.Browser.MobileDeviceModel
Request.Browser.ScreenPixelsWidth
Request.Browser.SupportsXmlHttp
您是否有理由避免使用第三方组件?
我们目前通过51Degrees.mobi使用WURFL设备数据库 - 效果非常好。
答案 1 :(得分: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);
}
}