Webforms vs Razor vs MVC和Industry Uses

时间:2013-11-22 10:47:35

标签: c# asp.net asp.net-mvc razor

我对C#和网络开发非常熟悉,所以我决定深入研究开发aspx网站的世界 - 在灯泡工作了几年之后。由于我实际上只熟悉MS术语中的经典asp时代,因此我在何时使用哪种方法时会遇到一些问题 - 还有一些关于哪些方法可能会受到业界青睐的更多见解。

我已经看过几次问这些类型的问题,但找不到任何与我想要的具体相关的内容:

  1. 我意识到ASP MVC是开发健壮网络的主要方法 应用程序,但这是正确的方法,即使是简单的, 客户网站除了干净和/或之外不需要太多 响应式设计?如果没有,网络形式我应该看 在

  2. 除了关注我必须做的几个网站(我计划通过ASPX做), 我应该关注什么才能获得更实用的展示方法 我的C#/ ASP能力,以获得初级/中级开发人员的工作 使用C#/。NET等

  3. * 3。几乎忘了,对于使用C#MVC,WPF,WCF,Razor等适用于真实场景的一些好书的任何可能的建议都会有所帮助

3 个答案:

答案 0 :(得分:6)

理论上,ASP.NET Web Forms应该更适合快速原型设计,即。在没有真正关注可扩展性和诸如关注点分离等问题的情况下,快速投入一些事情。

另一方面,ASP.NET MVC在视图和逻辑之间实现了更好的分离,并且当您想构建关注点和可伸缩性分离很重要的大型应用程序时,应该采用这种方式。

话虽如此,我个人永远不会选择ASP.NET Web Forms,即使是小型项目。我发现ASP.NET MVC是一种更清晰的方法。对我来说,Web Forms只是试图通过HTTP强制使用桌面开发模型,这只是一个漏洞的抽象,因为你很快会试图绕过这个模型,因为它不适合。至于快速原型设计,MVC确实没有快速的网格视图和精细的控件,但我个人认为,你可以通过结构良好和分离得到更快的速度,更不用说真正的HTTP模型。

至于你应该关注的其他事情,我认为除了服务器端,客户端开发越来越重要。除了简单的JavaScript,jQuery几乎是必须的,最近的SPA框架,如AngularJS和Durandal正在获得很大的吸引力。 另一方面,整个云计算理念在某些情况下需要特定的知识。如果你将专注于c#/ .NET,我会说看看Azure(你可以免费试用90天)。 在所有这些之间有一系列值得了解的不同技术,但我会说从你需要的东西开始,在一些技术上投入时间并尝试跟进新技术。

请确保不要让自己受到流行语的引导,并专注于那些真正帮助您解决问题的技术。

答案 1 :(得分:1)

只有我的意见,但是,

  • MVC适用于小型,干净的网站。在类似的基础上,它比ASPX等效的更典型(因为它携带较少的状态和页面大小往往更小)。响应真的取决于你所包含的CSS和JS。
  • 首先,关注你真正喜欢的内容,但是看看像Angular JS或KnockoutJS这样的一些想法,以及IoC,依赖注入,测试驱动开发,实体框架和Azure等后端。
  • 只需浏览ASP.Net上的各种Getting StartedMVC内容,示例和开发博客,那里有一些有用的信息。

答案 2 :(得分:0)

MVC更适合维护复杂的Web应用程序。如果它是一个简单的网站我不会用IoC杀死它,Mocking,Web表单更适合快速原型设计和RAD。