Web applications 检测页面是否来自移动设备?

Web applications 检测页面是否来自移动设备?,web-applications,mobile,Web Applications,Mobile,如何知道我的网页(asp.net)是否正在从移动设备加载?我想应用mobile.css而不是normal.css。我认为移动设备,所有的手机,PSP/DS/WII,iTouh和iPad都可以走。 我不知道我是在服务器端更改css文件选择css,还是应该使用JS之类的东西。如何执行此操作?检查UserAgent以查看哪些设备正在请求您的页面,例如: 谷歌知道更多。您可以通过查看请求对象的用户代理属性在服务器端检测到它。这应该适用于大多数移动浏览器,但需要写几个“或”语句 例如,要检测iPhone

如何知道我的网页(asp.net)是否正在从移动设备加载?我想应用mobile.css而不是normal.css。我认为移动设备,所有的手机,PSP/DS/WII,iTouh和iPad都可以走。
我不知道我是在服务器端更改css文件选择css,还是应该使用JS之类的东西。如何执行此操作?

检查UserAgent以查看哪些设备正在请求您的页面,例如:


谷歌知道更多。

您可以通过查看
请求
对象的
用户代理
属性在服务器端检测到它。这应该适用于大多数移动浏览器,但需要写几个“或”语句

例如,要检测iPhone,您可以使用以下内容

if (Request.UserAgent.Contains("iPhone")) {
     // load iphone specific JS/CSS here
}

我认为这个.net api最适合WURFL。

任何用于检测站点是否被移动设备访问的库最终都很可能会提取用户代理字符串,然后将其与设备数据存储(如WURFL或.Mobi)进行比较

有几个开源库,比如Tera_WURFL,但我不确定.Net应用程序可以使用什么


在我参与的一个项目中,我们做了一件事,不是检查所有的移动用户代理,如果找不到,就默认使用桌面,而是反过来做。我们检查所有桌面用户代理,如果找不到,则默认为mobile。我觉得这样可以提高性能,因为比较的次数减少了。

我认为这是放置“检查是否移动”代码片段的最佳方式。 此网站允许您以首选语言下载代码片段

它拥有几乎所有的移动用户代理


但实际上并没有说明它是否移动。显然,有一个.net Wurfl库在作品中,在他们的网站上引用:左边菜单。您可以使用NuGet软件包,也可以转到并下载它。事实上,我在博客上发表了一篇小文章: