【问题标题】:ASP.NET razor web application and aspx web application differenceASP.NET razor web 应用程序和 aspx web 应用程序的区别
【发布时间】:2012-06-07 09:32:20
【问题描述】:

我读过很多关于 razor 的文章,大多数人都说 razor 应用程序代码更易读、更干净、更清晰,但是何时以及为什么需要它我的意思是说微软在 razor Web 应用程序和 mvc 背后是否还有其他目的剃须刀应用?

【问题讨论】:

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


    【解决方案1】:

    Razor 只是语法

    不要写那些多余的<% ... %>,你只需写@...。 Razor 视图引擎会自动解析视图的可执行部分。

    这就是 Razor 视图通常比 Web 表单视图短的原因。但正如@walther 所说,这是一个品味问题,虽然你很快就被 Razor 迷住了,并且在使用一段时间后不想回去。

    申请?

    没有 Razor Web 应用程序这样的东西。它可以是带有 Razor 视图的 Asp.net MVC 应用程序,也可以是带有 Razor 语法的 Asp.net 网页......它们中的每一个都可以与长期存在的 Web 表单视图引擎一起使用......

    类比

    想象一下在纸上或 iPad 上阅读杂志。您会阅读相同的内容,但体验会有所不同。这就是 Razor 的全部意义所在。应用平台相同。只是视图引擎不同而已。

    【讨论】:

      【解决方案2】:

      我相信您误解了 Razor 背后的原因。你更喜欢什么只是口味问题。有些人不喜欢传统的 aspx 语法,所以他们想出了带有简化语法的 Razor。

      http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx

      不要相信它还有性能方面或类似的东西......它只是不同。

      【讨论】:

      • 是不是说剃须刀只用于某些不同的口味?
      【解决方案3】:

      1) aspx 应用程序架构已预先配置好使用的所有内容,而且它很重。 asp.net razor 或 asp.net MVC 具有最少的预配置项以及更多
      使用效率高。你在 MVC 中需要时加载项目

      2) aspx 具有不可测试的视图。 但 MVC 的视图是可测试的。

      3) mvc 在您使用的基本 razor \ mvc 标签中有更多内置验证 开发因此可以比 aspx 更干净

      4) aspx 不会强迫您制作结构化的最终产品,但 MVC 会迫使您遵循结构,从而使最终产品更加清晰和有条理。结构化编程总是有很多优点。

      等等..

      【讨论】:

      • 首先,他的问题不是关于 MVC 与 Webforms,而是关于 WEBFORMS 中的 Razor 与 aspx。其次,webforms 不可测试、很重等?如果您从未见过写得不好的 MVC 网站,这对您有好处,但也许您也应该对这个问题进行一些研究。代码的质量完全取决于程序员自己。
      • @Walter 感谢您的评论。以下是我的观点 a) 剃须刀仅适用于 MVC,因此我觉得我的比较适用于将 MVC 与 Webforms 进行比较 b) 我们可以像在 MVC 中一样测试 Webforms 中的视图吗?我不这么认为。 c) 写得不好的 MVC 是可能的,但在 aspx 中默认情况下它更有可能,因为默认情况下它没有强制执行的约束(比如没有规则土地)。 d)MVC 更轻,因为默认没有 ViewState。以及在 link 中引用 MVC 的更多原因
      • a) 错误。您也可以在 WebPages 和 WebForms 中使用它。 weblogs.asp.net/scottgu/archive/2010/07/02/…(请参阅摘要),您可以随时使用此 razorengine.codeplex.com。好吧,如果您当然知道它是如何工作的... b) webforms 中没有视图,并且如果您将逻辑与表示层分开,则确保您可以测试任何您想要的东西。许多人喜欢疯狂地混合它,然后他们到处都是不可测试的地方。 >>>
      • c) 不,这两种方法都不太可能。底层仍然是asp.net,完全取决于程序员了解他使用的技术。 Asp.net 只是一个工具,没有好坏之分。我在 Web 表单中分离逻辑、表示、数据等的次数比我见过的使用 MVC 的人多。 d) 如果您可以实际使用视图状态,那么它并没有什么大不了的。除了其他东西,它几乎也可以充当安全层。使用 MVC 时,您需要创建额外的逻辑来完成相同的工作。
      • 最后,这是我最后的评论,无论是 MVC 还是 Webforms 都比不上另一个。两者都是有效的方法,都得到了微软的支持,完全由程序员来决定他喜欢什么,不喜欢什么。如果您对 MVC 感觉很好,请务必尽您所能使用它。但我不理解这种态度,人们喜欢这样说话而视其他方法为劣等,只是因为他们不能真正利用它的力量和工具。您不必使用预定义的 webforms 控件...没有人强迫您,这就是我特别喜欢 asp.net 和 C# 的原因。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-21
      • 1970-01-01
      • 1970-01-01
      • 2015-10-01
      • 2016-10-18
      • 1970-01-01
      • 2011-06-14
      相关资源
      最近更新 更多