mvc 4桌面和移动



我想使用ASP.NET MVC 4来构建一个既面向桌面用户又面向移动用户的网站(将把平板电脑放在一边进行讨论)

我似乎有很多选择,我想获得一些反馈。

第一种选择是为桌面用户和移动用户使用相同的网站。每个页面请求都将到达相应的控制器,并根据形状因素(甚至可能取决于设备类型,例如Windows Phone、IPhone等)呈现视图。响应式设计将用于确保UI根据预期的用户体验(人像、风景)进行适当的定制。这个选项有以下好处(在我看来):

  • 控制器逻辑无重复
  • 要维护的单个站点
  • 用户没有重定向到其他网站
  • 没有重复的页面通知搜索爬网程序

第二种选择涉及为移动设备提供单独的站点,该站点仅为移动设备的视图和控制器操作方法。这也将具有提供设备特定视图(使用显示模式)和定向响应设计的能力。此选项有以下好处:

  • 在可用页面方面完全控制移动体验(我知道我可以有条件地呈现动作链接,但有了这个选项,如果设备上不允许功能,网站中就不存在页面
  • 移动设备的单独发布周期
  • 但最大的倒退是,控制器逻辑几乎肯定会在桌面网站和移动网站之间复制,这感觉在未来真的会很痛苦

感觉纯粹主义MVC应该有一个控制器,它应该获得数据,然后提供一个视图,允许数据出现在最合适的页面上。这感觉就像选项1。

我想这归结为我们是否应该有一个特定于设备的网站(http://m.)还是我们设计了一个可以从一系列设备上查看的网站?

想法?

老实说,我已经看到了这两种方法,所描述的第一种方法确实是最好的方法。然而,我要提醒你的是,一定要让移动体验达到最佳。我知道很多公司都不专注于完善他们的移动设备(包括我的体验),这可能会失去你的客户。然而,控制器逻辑的重复是可怕的。一种更好的方法是设置一个控制器集,但让该控制器集调用一组有点像api的代码,这样,如果你需要转到选项2,你就不会重复使用代码,移动时生活会变得更轻松。无论如何,如果你有任何进一步的问题,我很乐意与你交谈,我是一名专业的移动开发人员,了解iPhone Android、WP7等之间网络交互的各个方面。

最新更新