如何知道asp.net网站是从移动设备还是从系统/笔记本电脑/机器(windows,mac等)访问
我使用asp.net web developer 2010开发了一个网站。如果从移动浏览器访问该网站,我想重定向到不同的页面。 并且,windows / mac / linux等用户的不同function。
我怎样才能做到这一点?
我在一些论坛中提到了一些post,据说我需要依赖第三方库。
如何在没有任何第三方库的情况下实现此目的?
任何人请帮助我。
任何帮助表示赞赏。 谢谢!!
Request.Browser对象属性可能就在它所在的位置,这些都是可能对您有用的选项:
Request.Browser.IsMobileDevice Request.Browser.MobileDeviceManufacturer Request.Browser.MobileDeviceModel Request.Browser.ScreenPixelsWidth Request.Browser.SupportsXmlHttp
您是否有理由避免使用第三方组件?
我们目前通过51Degrees.mobi使用WURFL设备数据库 – 这非常有效。
您可以在asp.net中使用useragent来validation请求是来自移动还是桌面。
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); } }