如何创建模板语言

时间:2011-11-25 18:25:06

标签: c#-4.0 template-engine

我不知道如何解释这个并且不确定这是否是正确的标题。您可以编辑此帖子和标题以使其更清晰。

这是我需要做的。我们有一个CMS,并希望简化创建页面。我们希望使用更简单的语言,而不是使用原始C#来创建页面模板。例如。

旧方式:

<span>User name: <%= Model.UserName %></span>

新方法:

<span>User name: {Username}</span>

正如您所看到的,新方法更简单。但我不想止步于此。我想包括条件,循环变量和其他非常简单的脚本概念,由C#解析。有没有一种已知的方法可以做到这一点,或者我可以使用任何现成的代码来实现这一点。

修改

我需要这样的东西的原因是使页面高度动态。此模板语言不仅用于呈现网页。它将用于从数据库中获取数据,从其他网页加载信息,构建动态数据,动态创建计算数据。这意味着我可以在帖子中插入模板代码,然后它将动态运行自定义模板(脚本代码)。

3 个答案:

答案 0 :(得分:3)

你可能想要RazorEngine,它使用微软新的Razor模板语言。

它甚至比你的例子还要轻。

答案 1 :(得分:1)

你可以看看Mustache项目,它非常成熟并且在两端工作(后端和前端):

http://mustache.github.com/

祝你好运!

答案 2 :(得分:0)

您使用的是ASP.NET Web窗体还是ASP.NET MVC? 如果它是MVC,那么已经有许多不同的ViewEngine可以让你以不同的方式创建页面。

看这里:

http://sparkviewengine.com/http://code.google.com/p/nhaml/