asp.net-mvc - 使用 ASP.NET MVC 的跨设备 Web 应用程序

标签 asp.net-mvc twitter-bootstrap responsive-design device-detection 51degrees

我目前正在开发一个 ASP.NET MVC 网上商店,该网上商店必须针对移动设备(尤其是平板电脑和智能手机)进行优化。这是为我们工作中的客户准备的,但我正在家里对 ASP.NET MVC 设备检测进行一些研究。我用它创建了一个小应用程序,它似乎工作得很好。我喜欢通过为每种设备类型使用不同的 View 来很好地分隔所有内容的方式。

我现在正在努力解决的问题是是否也为该网上商店使用 ASP.NET MVC 设备检测,或者使用客户端响应框架,例如 Bootstrap。我正在为这个决定而挣扎,因为 ASP.NET MVC 设备检测对我来说似乎并不真正“成熟”。在互联网上找不到太多关于它的信息,并且默认情况下它只支持移动 View ,不支持平板电脑 View 或其他任何东西。

我对设备检测犹豫不决的另一个原因是,带有移动设备用户代理字符串的标准 ASP.NET MVC 库可能不会更新,因此当新设备问世(而且确实如此)时,网上商店显示的是桌面 View ,而我们为移动设备提供了一个很好的优化 View 。当然,也有用于最新设备检测的服务,例如 51Degrees.mobile,但它们非常昂贵。 (免费版本不支持检测平板电脑)
我找到了一种通过使用 this 中的示例为平板电脑创建不同 View 的方法。帖子,但该示例使用正则表达式来检测智能手机和平板电脑,这当然有时也会过时。

另一方面,我们有客户端响应式解决方案(Bootstrap)。客户端响应式站点的缺点是不同的 View 模式没有分开。 HTML 未针对设备进行优化。该网站只是“插入”桌面版本,浏览器使用 CSS 媒体查询调整 HTML 页面。该代码不像设备检测解决方案那样干净。

简单的问题:是否有任何免费或较便宜的方法来使用 ASP.NET MVC 设备检测?随着时间的推移,它会满足我们的需求吗?它不会在某个时候过时吗?

我真的很高兴听到您认为在这种情况下最好的选择是什么。提前致谢。

最佳答案

响应式设计的全部要点在于它是独立于设备的。据我所知,MVC 中的设备检测始于一些相当古老的 IIS Browsercap 技术,该技术已经过时了。

现在 Android 手机的尺寸范围从 4 英寸到 6.5 英寸甚至更大,有太多的外形尺寸无法跟上。使用 Bootstrap 等响应式设计框架将允许您瞄准分辨率,而不是设备。大多数现代智能手机和移动浏览器(甚至 IE!)都会一致地呈现响应式设计。

关于asp.net-mvc - 使用 ASP.NET MVC 的跨设备 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23920061/

相关文章:

c# - ASP.NET MVC Preview 4 - 使用现有参数停止 Url.RouteUrl() 等

asp.net-mvc - Internet Explorer 中缺少防伪造 cookie

html - 如何使用@media 在输入上方设置标签?

.net - 外部 AppSettings 文件不适用于链接文件

html - 如何在 Bootstrap 列中居中图像

javascript - angular2 Bootstrap 动态轮播

css - 响应断点不适用于 Splide js slider

html - 网站响应式设计的错误

javascript - 响应式横向页面滑动

.net - EntityFramework .net 4 用一个简单的方法更新实体