微软MVC

时间:2009-05-01 10:24:19

标签: asp.net-mvc entity-framework

我非常接近使用实体框架和标准asp.net + ajax的网站,但现在我在想如果重新开始并使用microsoft mvc更聪明。 MVC会成为新事物,我应该尝试实现吗? MVC如何在高流量网站上运行?

12 个答案:

答案 0 :(得分:3)

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

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

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

答案 1 :(得分:2)

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

答案 2 :(得分:2)

评估您考虑重做所有辛勤工作的原因,然后您就会得到答案。

  • 该网站是否为您自己的学习目的而完成的项目?如果是这样,那么只要你愿意抛弃你已经完成的很多工作,那么在MVC中重做网站是一种选择。

  • 网站是否以某人的费用完成?如果是这样,你绝对不应该在这个阶段重做MVC中的站点,因为你将不必要地重新设置项目。

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

答案 3 :(得分:1)

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

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

答案 4 :(得分:1)

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

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

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

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

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

答案 5 :(得分:0)

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

答案 6 :(得分:0)

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

查看this

答案 7 :(得分:0)

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

答案 8 :(得分:0)

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

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

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

答案 9 :(得分:0)

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

答案 10 :(得分:0)

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

答案 11 :(得分:0)

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窗体模型用于特定网站之前,请权衡每种方法的优势。

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

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

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

基于Web窗体的Web应用程序的优点

基于Web窗体的框架具有以下优势:

  • 它支持通过HTTP保留状态的事件模型 有利于业务线Web应用程序开发。网络 基于表单的应用程序提供了许多支持的事件 在数百个服务器控件中。
  • 它使用页面控制器模式添加功能 个人页面。有关更多信息,请参阅页面控制器。
  • 它在基于服务器的表单上使用视图状态,可以进行管理 国家信息更容易。
  • 适用于Web开发人员和设计人员的小团队 想要利用大量可用的组件 用于快速应用程序开发。
  • 一般来说,应用程序开发不太复杂,因为 组件(Page类,控件等)紧密 集成,通常需要的代码少于MVC模型。