我的.NET网站主要是为桌面浏览器而构建的,但我目前正在制作它的移动版本。我要做的是根据用户访问网站的设备加载网站。有没有办法在我们请求网站时获取有关用户设备的信息?
此致 萨米特。
答案 0 :(得分:4)
根据其他人的建议,您可以使用通过System.Web.HttpBrowserCapabilities
访问的Request.Browser
类,但如果没有更新browser definition files,则信息完全没用。
例如,如果您使用Request.Browser.IsMobileDevice
,应为您提供所需内容,但它基于Windows中.NET框架文件夹中的一组非常过时的正则表达式。< / p>
您可以在Stack Overflow上查看(当前未答复和未受欢迎的)帖子here上可能遇到的问题类型。
如果您不打算保持浏览器定义文件的最新状态(这不是一项小任务),那么就不要沿着这条路走下去了。
如果您只想知道用户是否在移动设备上查看,则可以选择以下几种方法:
其中一些是免费的,一些不是,如果你真的只对它是否是一个移动设备感兴趣,我的建议是使用Detect Mobile Browsers。
答案 1 :(得分:1)
使服务器能够收集有关客户端上运行的浏览器功能的信息。
这实际上暴露在Request
对象的Page
属性上 - 在ASP.NET页面中,您可以执行以下操作:
var browserCap = this.Request.Browser;
答案 2 :(得分:0)
您可以检查HttpRequest.Browser属性 - MSDN link。
答案 3 :(得分:0)
如果您正在寻找更低级别的内容:http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.useragent(v=vs.90).aspx
答案 4 :(得分:0)
商业替代方案是BrowserHawk