我即将完成一个使用实体框架和标准 asp.net+ajax 的网站,但现在我在想是否重新开始并使用 microsoft mvc 来完成它会更明智。MVC 会成为新事物吗?我应该尝试实现它吗?MVC 在高流量网站上表现如何?

有帮助吗?

解决方案

评估一下你考虑重做所有努力工作的原因,你就会得到答案。

  • 该网站是为了您自己的学习目的而完成的项目吗?如果是这样,那么在 MVC 中重做网站是一个选择,只要您愿意放弃已经完成的大量工作。

  • 该网站的建设是否需要某些人付出代价?如果是这样,您绝对不应该在这个阶段在 MVC 中重做站点,因为您将不必要地恢复项目。

请记住,当涉及财务时,回溯和重做已经完成的事情,只是为了让您有机会使用您更喜欢的技术,最好附有合理的业务案例。在大多数情况下,客户不会关心您使用什么技术,他们会关心完成这件事需要多长时间以及需要花费多少钱。因此,您的决定应该基于他们的需求,而不是您的需求。

其他提示

不要重新设计已经完成开发的工作,或者您已准备好启动新技术。而是完成项目并在修订版或全新网站中使用新技术。应该考虑这种类型的重新分解的唯一时间是业务需求发生变化并且新需求需要新功能。

Mvc是一个非常强大且稳定的平台,但它是开发人员的选择。业务需求将定义要使用的解决方案的类型。这是正确工作的正确工具。

实际例子,我最近不得不做出选择,但由于项目完成后缺乏维护支持技能,并且为此目的创建了对单一资源的依赖,业务拒绝使用Mvc。

如果你差不多完成,我没有看到重新实现的重点。为什么不将它存储到您的下一个网站并尝试呢? Stack Overflow也是使用ASP.Net MVC实现的 - 性能令人难以置信,并且它们获得了大量流量。

就我个人而言,我建议使用MVC,因为它更具有直观性,您可以更好地控制页面而不是网页表单。

如果你是MVC的新手,我不建议再次使用MVC,因为学习曲线可能有点陡峭!

如果你所谈论的网站是公开的网站,你打算在世界上发布,那么我会建议你完成你正在做的事情,发布它,并在你决定投掷之前获得网站上的用户反馈它离开并重新实现它。如果这只是一个业余爱好网站,那么把它扔掉就可以了。

但是,毫无疑问,我认为ASP.NET MVC是更好的选择,你应该将它作为未来所有开发的默认选项。

正如其他回复中所提到的,SO正在使用ASP.NET MVC。

我认为ASP.NET MVC不会妨碍达到您的规模要求 - 在任何商业网站中,它通常是数据源(您的SQL数据库,或您调用的Web服务),这将限制您的处理高流量的能力。

我想这实际上取决于您的使用模式,您访问构建页面的数据量,您的内容是否可以缓存,是否有数百万用户只是阅读页面,还是数百名用户正在更新数据和这样的事情将推动你扩展的能力,而且大多数都与你用来渲染页面的框架是正交的。

好吧,StackOverflow使用ASP.NET MVC,它是一个相当高的流量站点。我从来没有经历过任何减速。因此,我认为ASP.NET MVC没有任何重大的固有性能限制。

MVC非常好,我们从第一次CTP开始就使用它。但是,如果你只是盲目地关注MVC博客/教程,就存在性能问题。

请参阅

如果你有足够的时间学习新技术,你已经完成了很多你的UI层jus棒与web表单,MVC不会让你失望

正如大多数人所说,如果您已经完成了当前的网站,请继续保持原样。

对于您的下一个项目,我强烈建议您坐下来学习MVC。一旦你进行切换,不同的层将变得非常清晰,独特,因此更简洁(希望)。

因此,如果您需要返回并使用以前的网站,您可能决定在MVC中重新实现它们,如果它不是太难。您对代码中发生的事情的完全控制非常好。如果您不喜欢使用VB或C#,您甚至可以分支并使用 IronRuby IronPython 以及沿途的一些新语言。更不用说MVC是完全可扩展的(现在)开源。如果您想了解优缺点,请查看此问题

另一种选择是在WebForms中执行站点的一部分,在MVC中执行另一部分。据我所知,没有什么可以阻止你这样做。

我以前说过,我会再说一遍。 :)我最近重新创建了一个几乎完成的项目作为mvc而不是asp.net。我花了一个星期的时间做好准备,但客户对它的结果非常满意非常满意!

(https://msdn.microsoft.com/en-us/library/dd381412(v=vs.98).aspx)

何时创建 MVC 应用程序

您必须仔细考虑是使用 ASP.NET MVC 框架还是 ASP.NET Web 窗体模型来实现 Web 应用程序。MVC 框架不会取代 Web Forms 模型;您可以将任一框架用于 Web 应用程序。(如果您具有现有的基于Web表单的应用程序,则这些应用程序将继续按照往常的方式工作。

基于 MVC 的 Web 应用程序的优点

ASP.NET MVC 框架具有以下优点:

  • 通过将应用程序分配为模型,视图和控制器,它可以更轻松地管理复杂性。
  • 它不使用视图状态或基于服务器的表单。这使得MVC框架非常适合想要完全控制应用程序行为的开发人员。
  • 它使用前端控制器模式来处理 Web 应用程序
    通过单个控制器发出请求。这使您能够设计一个
    支持丰富的路由基础设施的应用程序。了解更多
    信息,请参阅前端控制器。
  • 它为测试驱动开发(TDD)提供了更好的支持。
  • 它适用于由大型开发人员和需要高度控制应用程序行为控制的Web设计人员支持的Web应用程序。

基于 Web 表单的 Web 应用程序的优点

基于 Web 表单的框架具有以下优点:

  • 它支持一个事件模型,该模型保留了HTTP的状态,该模型受益于业务线Web应用程序开发。基于Web表单的应用程序提供了数十个服务器控件中支持的事件。
  • 它使用页面控制器模式,该模式为单个页面添加功能。有关详细信息,请参阅页面控制器。
  • 它在基于服务器的表单上使用查看状态,这可以使管理状态信息更容易。
  • 它适用于想要利用可用于快​​速应用程序开发的大量组件的小型网络开发人员和设计师团队。
  • 通常,对于应用程序开发而言,它不那么复杂,因为组件(页面类,控件等)紧密整合,并且通常需要的代码比MVC模型少。
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top