我开始学习ASP.NET MVC3.

所以,当我在网上和书本上阅读教程时,我经常看到这个第"view engine"学期.我不知道这是什么.

它实际上是做什么的?

为什么这对我很重要?

推荐答案

视图引擎负责从视图中创建HTML.视图通常是HTML和编程语言的某种混合.其中大多数的模式被称为two-step view.

例如,ASP.NET自带开箱即用的视图引擎.这就是视图有很多像<% %><%: %>这样的标记的地方.它使用.aspx文件扩展名.

在ASP.NETMVC3中,添加了另一个开箱即用的视图引擎Razor,它具有更吸引人的语法,例如<div>@Model.UserName</div>.

视图引擎的 Select 很重要,因为视图引擎的功能集非常不同.例如,一些支持呈现为PDF文件;有些不能在web环境之外使用(旧的ASP.NET视图引擎也是如此),而有些可以(例如Razor).'当你想以构建视图的方式创建HTML邮箱时,视图的脱机呈现非常方便,这些邮箱应该由后台工作人员而不是web应用程序发送.

这上面有个asp.net view engines的很好的对比.

好消息是,您可以在ASP中并行使用多个视图引擎.NET MVC,不过除非必要,否则我不会推荐它.

在Razor引擎中已经有了一些非常好的扩展点.例如,您可以提供自定义视图基类,这是一个强大的概念,使您可以轻松地在正确的位置添加大量功能,而不必处理否则必须处理的所有具体细节.

我现在 Select 剃须刀.

Asp.net相关问答推荐

属性包含破折号的 ServiceStack 请求对象?

在 ASP.Net 中使用自定义 RoleProvider 时如何允许多个角色查看页面

将 Global.asax 迁移到 Startup.cs

在 appSettings 中存储字符串数组?

我可以在 Visual Studio 2010 中将任务列表项添加到 csHTML 吗?

System.Linq.Dynamic 不支持 OrderByDescending("someColumn")?

IIS 6.0 通配符映射基准?

asp.net 中的 Eval() 有什么用

如何设置asp.net身份cookie过期时间

如何在 ASP.NET 中仅在调试模式下执行代码

缩小失败.返回未缩小的内容

aspnet_compiler 发现错误版本的 System.Web.WebPages 1.0.0.0 而不是 2.0.0.0

根据 DropDownList 的值动态启用或禁用RequiredFieldValidator

如何删除asp.net中的特定会话?

如何将数据集转换为数据表

如何在 ASP.NET 中设置下拉列表项?

使用 Twitter Bootstrap 在 @html.actionlink 中显示 html

主机与 DnsSafeHost

ContentResult 与字符串

IE9 JavaScript 错误:SCRIPT5007:无法获取属性ui的值:对象为空或未定义