如何知道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); } }