asp.net-mvc - ASP.MVC : Implementing a non-templated view engine?

标签 asp.net-mvc template-engine

我是 ASP.MVC 的新手。对于我们新的 Web 应用程序,我正在考虑两种 View 引擎选项:

  1. 使用一些可用的 View 引擎(默认引擎、NVelocity、Brail 等)作为主要 View 代码生成器。
  2. 实现特定于应用程序的 C# DSL 以生成 HTML 代码,以便将大部分 View 代码存储在 C# 类中(使用某种 smart HTML generation like the one described by Jimmy Bogard )。

2. 背后的想法是减少每次需要新 View 时直接编写 HTML 代码的需要,但我不确定这是否是一个好方法。它的一个缺点是如果不重新编译项目就不可能更改生成的代码。

你怎么看?

最佳答案

我在其他项目中看到过类似的方法,但总的来说,它们带来的麻烦多于它们的值(value)。您失去的灵 active 对于为生成阶段的自动化付出的代价太高了。想一想需求最终只适用于一种特殊情况的频率,现在想象一下您必须如何处理这里的情况。

此外,如果您的 View 给您带来如此多的痛苦,我建议您可能没有正确使用 View 。您应该在整个站点的 View 中看到很少的重复。例如,公共(public)部分应该重构为单独的 block 并从那里提取。

关于asp.net-mvc - ASP.MVC : Implementing a non-templated view engine?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/819667/

相关文章:

jquery - 基于另一个 Textbox MVC 4 填充文本框

java - 带有 java 编译器的客户端模板语言(DRY 模板)

php - PHP 中的模板制作正确...如何?

java - 使用 Velocity/FreeMarker 模板的电子邮件国际化

Java : Applying a Velocity script dynamically

php - 如何使用laravel中的blade模板在名称或id字段中输入变量值?

asp.net-mvc - MVC.NET 是否通过 cookie 处理角色?

javascript - MVC 和 Jquery 验证 : Disabled Dropdownlists gets validate, 如何让它不发生

.net - 如何在 .NET 中包含多个 Javascript 文件(就像它们在 Rails 中所做的那样)

c# - 在 View JQuery 中获取 ViewData