Как создать язык шаблонов


Я не знаю, как это объяснить, и не уверен, что это правильное название. Вы можете отредактировать этот пост и заголовок, чтобы сделать его более понятным.

Вот что мне нужно сделать. У нас есть CMS, и мы хотели бы упростить создание страниц. Вместо того чтобы использовать необработанный C# для создания шаблонов страниц, мы хотим использовать более простой язык. Например.

Старый способ:

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

Новый способ:

<span>User name: {Username}</span>
Как видите, новый способ гораздо проще. Но я не хотел останавливаться на достигнутом. я хотелось бы включить условные обозначения, переменные циклов и другие очень простые скриптовые концепции для анализа в C#. Есть ли известный метод для этого или любой готовый код, который я могу использовать, чтобы сделать это возможным.

Редактировать:

Причина, по которой мне нужно что-то подобное, заключается в том, чтобы сделать страницу очень динамичной. Этот язык шаблонов будет использоваться не только для представления веб-страницы. он будет использоваться для извлечения данных из базы данных, загрузки информации с других веб-страниц, построения динамических данных, создавайте расчетные данные на лету. Это означает, что я могу вставить код шаблона в сообщение, а затем он будет запускать пользовательский шаблон (код сценария) на лету.

3 2

3 ответа:

Вы, вероятно, хотите RazorEngine, который использует новый язык шаблонов Razor от Microsoft.

Это даже легче, чем ваш пример.

Вы можете взглянуть на проект усов, он очень зрелый и работает в обоих концах (заднем и переднем):

Http://mustache.github.com/

Удачи!

Вы используете ASP.NET веб-формы или ASP.NET MVC? Если это MVC, то уже существует множество различных ViewEngines, которые позволяют создавать страницы различными способами.

Смотрите сюда:

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