Asp.net mvc MVC4桌面和移动设备

Asp.net mvc MVC4桌面和移动设备,asp.net-mvc,asp.net-mvc-4,mobile,web-applications,Asp.net Mvc,Asp.net Mvc 4,Mobile,Web Applications,我想使用ASP.NET MVC 4来构建一个面向桌面和移动用户的网站(将平板电脑放在一边讨论) 我似乎有很多选择,我想获得一些反馈 第一种选择涉及为桌面和移动用户使用相同的网站。每个页面请求都会转到相应的控制器,并根据形状因素呈现视图(甚至可能取决于设备类型,例如Windows Phone、IPhone等)。响应性设计将用于确保用户界面适合预期的用户体验(纵向、横向)。此选项有以下好处(在我看来): 控制器逻辑无重复 要维护的单一站点 用户无法重定向到其他站点 没有重复的页面来通知搜索爬虫

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

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

第一种选择涉及为桌面和移动用户使用相同的网站。每个页面请求都会转到相应的控制器,并根据形状因素呈现视图(甚至可能取决于设备类型,例如Windows Phone、IPhone等)。响应性设计将用于确保用户界面适合预期的用户体验(纵向、横向)。此选项有以下好处(在我看来):

  • 控制器逻辑无重复
  • 要维护的单一站点
  • 用户无法重定向到其他站点
  • 没有重复的页面来通知搜索爬虫
第二个选项涉及为移动设备提供单独的站点,该站点仅为移动设备提供视图和控制器操作方法。它还能够提供特定于设备的视图(使用显示模式)和响应性方向设计。此选项具有以下好处:

  • 在页面可用性方面完全控制移动体验(我知道我可以有条件地呈现操作链接,但使用此选项,如果设备上不允许使用功能,则站点中不存在页面
  • 移动设备的单独发布周期
  • 但最大的倒退是,控制器逻辑几乎肯定会在桌面站点和移动站点之间重复,这让人感觉在未来会受到伤害
感觉上,纯粹的MVC应该有一个控制器,该控制器应该获取数据,然后提供一个视图,允许数据出现在最合适的页面上

我想归根结底,我们应该有一个特定于设备的网站吗(http://m.)还是我们设计了一个可以从一系列设备中查看的站点


想法?

很诚恳地说,我已经看到了两种方法,并且描述的第一种方法确实是最好的方法。不过,我要提醒你的是,一定要尽可能让移动体验达到最佳。我知道很多公司并不专注于完善他们的移动设备(包括我的体验)这可能会让你失去客户。然而,控制器逻辑的复制是可怕的。一种更好的方法,虽然没有描述,但它会有一个控制器集,但该控制器集调用一组代码,其行为有点像api,这样如果你需要移动到选项2,你就不会复制代码,生活就会变得简单不管怎样,如果你有任何进一步的问题,我很乐意与你聊天,我是一名专业的移动开发人员,我知道iPhone Android、WP7等之间网络交互的各个方面