0

我曾经使用 ColdFusion 进行过一段时间的开发,但后来离开了 Web 开发领域一段时间。我回来了,现在,并已被聘为中级(就在入门级以上)级别的 Web 开发人员。我的工作场所使用的是 MVC 4,但没有使用 Razor 视图引擎。我购买的两本 MVC 4 书籍(以及那里的大量教程和博客)只讨论了使用 Razor——我自学中使用它,但我需要了解它在不使用时是如何工作的剃刀引擎。

使用 ASPX 视图引擎时,您如何使用它?它是否像普通的 ASPX 页面一样工作,我将 ASP.NET 控件放在页面上,然后使用 C# 中的代码隐藏来引用它们?只是,我没有使用 ASP.NET 控件,而是使用 HtmlHelper 方法?请记住,我不是在询问使用<% %>而不是的基本格式<@,因为大部分内容都在这里介绍:http: //haacked.com/archive/2011/01/06/razor-syntax-quick-reference。 .aspx _ 我无法理解流量将如何通过我的基本 HomeController 路由到这些 ASPX 页面(它只有几个ActionResult()方法,没什么大不了的)。

如果需要,我可以详细说明。

4

3 回答 3

0

看着

MVC 的精神是摆脱背后的代码,因此将拖放到设计器上并从背后的代码操纵控件的旧方法变得有些过时或多余。如果您已经在使用 HTML5 助手.. 我会继续这样做。

这纯粹是个人观点......但我会提出使用 Razor 的理由。

编辑:您将模型传递给视图......模型保存数据。

于 2013-01-29T09:47:13.640 回答
0

如果您使用的是 ASP.NET MVC,那么请忘记背后的代码。至于视图引擎,您可以使用 razor 或 aspx 方式,这意味着您可以在视图上使用的语法是 razor 或 aspx。路由不会受到您选择的视图引擎的影响。(无论您选择 razor 视图引擎还是 aspx,它的行为都会相同。并且没有 aspx 视图的行为不像普通的 aspx 网络表单,没有视图状态等后面没有代码 是一个很好的比较ASP.NET 和 ASP.NET MVC 和这里是不同视图引擎的比较。

于 2013-01-29T09:52:55.190 回答
0

无论视图引擎如何,所有 MVC视图页面都遵循相同的生命周期:

  1. 路由 - 请求被映射到操作方法(使用请求数据,如 URL、查询字符串、会话等)
  2. 控制器 - 为匹配的操作方法创建一个控制器。它填充了所有环境、请求和会话数据
  3. Action - 调用匹配的动作方法
  4. Result - ActionResultaction 方法返回的结果被执行。对于视图结果,这意味着:1) 视图引擎找到匹配的视图名称,2) 匹配的视图使用 action 方法返回的任何模型数据进行实例化,3) 视图由视图引擎处理。

这意味着 WebForms 视图将由 MVC WebForms 视图引擎执行,而不是由 ASP.NET WebForms 系统执行。视图引擎将执行一些基本解析,将模型中的数据添加到视图中(如 指定的那样<%%>)。

此外,仅供参考,您甚至可以在单个项目中混合视图引擎(需要一些设置)。

于 2013-01-29T10:14:23.707 回答