【发布时间】:2014-05-28 19:14:51
【问题描述】:
我目前正在开发一个必须针对移动设备(尤其是平板电脑和智能手机)进行优化的 ASP.NET MVC 网上商店。这是给我们工作中的客户的,但我正在家里对 ASP.NET MVC 设备检测进行一些研究。我用它创建了一个小应用程序,它似乎工作得很好。我喜欢通过为每种设备类型使用不同的视图来很好地分离所有内容的方式。
我现在正在努力解决的问题是,该网店也使用 ASP.NET MVC 设备检测,还是使用客户端响应框架,如 Bootstrap。我正在为这个决定而苦苦挣扎,因为 ASP.NET MVC 设备检测对我来说似乎并不真正“成熟”。在互联网上找不到太多关于它的内容,默认情况下它只支持移动视图,不支持平板电脑视图或其他任何内容。
我对设备检测犹豫不决的另一个原因是,带有移动设备用户代理字符串的标准 ASP.NET MVC 库可能不会更新,所以当新设备问世时(它们确实会), webshop 正在显示桌面视图,而我们为移动设备提供了一个很好的优化视图。当然,也有用于最新设备检测的服务,例如 51Degrees.mobile,但它们非常昂贵。 (免费版不支持检测平板电脑)
我已经找到了一种通过使用this 帖子中的示例为平板电脑创建不同视图的方法,但该示例使用正则表达式来检测智能手机和平板电脑,当然这在某些时候也会过时。
另一方面,我们有客户端响应式解决方案 (Bootstrap)。客户端响应式站点的缺点是不同的视图模式没有分开。 HTML 未针对设备进行优化。该网站只是一种“加入”桌面版本,浏览器使用 CSS 媒体查询调整 HTML 页面。代码不像设备检测解决方案那样干净。
快速提问:是否有任何免费或更便宜的方式来使用 ASP.NET MVC 设备检测?随着时间的推移,它会满足我们的需求吗?它不会在某个时候过时吗?
很高兴听到您认为在这种情况下的最佳选择。提前致谢。
【问题讨论】:
-
当我在 nuget 中拉 51 度时,似乎没有任何费用。您是否尝试过安装 nuget 包而不是访问他们的网站? 51degrees.codeplex.com/license
-
确实有免费版本,但是,就像我说的,不幸的是,该版本无法检测平板电脑,而平板电脑尺寸是这种情况下最重要的尺寸。谢谢你的建议。感谢您的努力!
标签: asp.net-mvc twitter-bootstrap responsive-design device-detection 51degrees