从Classic ASP到WebMatrix或.NET MVC,我感到很困惑?

时间:2014-08-11 13:42:25

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

我在VS Express 2013 for Web中使用ASP.Net MVC 5做了一些教程,并且对这个MVC结构的学习曲线感到不知所措,以及它如何适用于我在高级经典ASP开发中的类似案例适应。现在我只看了WebMatrix,现在我完全糊涂了。我已经意识到WebMatrix Razor“Web Pages”就像经典的类固醇asp一样,学习曲线似乎比MVC 5低10倍,但我仍然感到困惑。

我注意到MVC 5有比Razor - Controllers(.cs文件)和Models(更多.cs文件)更多的组件,而WebMatrix Razor只有看起来像是(.cshtml文件)。

所以看来WM Razor大约是MVC 5的三分之一。对于我来说,作为一名经典的asp开发者,这对我来说是个好消息 - 学习曲线较少。但是,我错过了任何有价值的东西,而不是使用MVC 5吗?或者这些技术应该一起工作 - MVC 5 + WebMatrix Razor?我真的很困惑。 MVC 5希望你避免在视图中放置像DB conn等代码,而WM Razor则不然。这两个完全不同的框架是什么?我怎么知道现在对我有什么好处?我2天前做过经典的asp,昨晚是MVC 5,现在是WebMatrix,我迷路了。

我真正想做的就是了解如何在MVC 5或WebMatrix Razor中构建我现有的经典asp网站,但我不想这样做,并且发现我应该在以后完成另一个。如果有人了解我现在所处的位置,并对如何做什么有所了解,我将不胜感激。

1 个答案:

答案 0 :(得分:2)

混淆可能在于,有一些较新的Microsoft技术可以像构建块一样协同工作,而Classic ASP.NET是一体化的包。

Microsoft语法选择:

  • 经典ASP.NET语法:原始< %%>十多年来,您熟悉并熟悉Microsoft项目中的语法。

  • Razor:是新语法的名称,更像JavaScript,使用 @var 而不是<%=&#34 ; VAR" %GT; 。这是可选的 但建议(因为它打字少得多)。如果你看看ASP.Net MVC 1或2,您将看到使用经典的ASP.NET语法。

这些语法中的任何一个都符合以下任何一种。 (虽然通常一个比另一个更受青睐)

Microsoft框架:

  • 经典ASP.NET :在同一页面上使用VB或C#的HTML和经典ASP.NET语法的简单页面。

  • ASP.NET Web窗体:类似于Classic ASP.NET的外观,但模仿Windows窗体事件驱动的编程体验。

  • Webmatrix CSHTML 适用于较小的项目,并吸引经典的ASP.NET程序员。它很像一个经典的ASP.NET页面 在一个页面上混合HTML和C#编程,但使用Razor语法 而不是ASP.NET语法。它允许更新的功能 经典的ASP.NET。

  • ASP.NET MVC:模型视图控制器是Microsoft在许多编程语言中使用的MVC模式的实现,并且是 在Microsoft领域之外的网络编程很受欢迎。它是 适用于受益于更多文件的大型项目 组织和熟悉MVC模式的程序员。 将Razor与MVC一起使用是可选的,但很常见。

听起来我最好的选择是使用Webmatrix CSHTML并很好地学习Razor。一旦你对此感到满意,如果你的项目足够大,你就可以冒险进入MVC。 (我很乐意建议如何将Webmatrix重组为MVC,但这样可以更好地适应不同的问题。)

它也可能有助于研究MVC模式,而不是微软特定的风格,以了解它旨在解决的问题类型。

完全披露:我的偏好是Razor和MVC,但我来自非Microsoft背景,并且已经熟悉MVC模式。