【发布时间】:2014-04-21 23:15:30
【问题描述】:
有没有办法根据屏幕大小而不是用户代理将请求分类为移动设备或桌面设备?
例如,iPad Retina 将我的网站作为桌面查看时没有问题,但我希望 iPad 1 被识别为移动设备。如果我尝试从 Android 设备的用户代理中确定屏幕尺寸,那将会失控。有没有办法在 MVC 中做这样的事情:
if (screen size < 840px)
HttpContext.SetOverriddenBrowser(BrowserOverride.Mobile)
【问题讨论】:
-
为什么不向您的 CSS 添加媒体查询。这就是它们的部分用途。
-
移动站点是 MVC 应用程序(jQuery Mobile 应用程序)中的一个全新站点。一些架构是共享的,但很多时候移动设备使用完全不同的控制器、查询、.mobile 视图、条件@if (ViewContext.HttpContext.GetOverriddenBrowser().IsMobileDevice) 以及其他深层差异和处理。
-
您可以在 MVC4 中使用 DisplayModeProvider 类。这是code project link,可能会对您有所帮助。
标签: c# asp.net-mvc mobile responsive-design asp.net-mvc-5