Как создать язык шаблонов
Я не знаю, как это объяснить, и не уверен, что это правильное название. Вы можете отредактировать этот пост и заголовок, чтобы сделать его более понятным.
Вот что мне нужно сделать. У нас есть CMS, и мы хотели бы упростить создание страниц. Вместо того чтобы использовать необработанный C# для создания шаблонов страниц, мы хотим использовать более простой язык. Например.
Старый способ:
<span>User name: <%= Model.UserName %></span>
Новый способ:
<span>User name: {Username}</span>
Как видите, новый способ гораздо проще. Но я не хотел останавливаться на достигнутом. я хотелось бы включить условные обозначения, переменные циклов и другие очень простые скриптовые концепции для анализа в C#. Есть ли известный метод для этого или любой готовый код, который я могу использовать, чтобы сделать это возможным.
Редактировать:
Причина, по которой мне нужно что-то подобное, заключается в том, чтобы сделать страницу очень динамичной. Этот язык шаблонов будет использоваться не только для представления веб-страницы. он будет использоваться для извлечения данных из базы данных, загрузки информации с других веб-страниц, построения динамических данных, создавайте расчетные данные на лету. Это означает, что я могу вставить код шаблона в сообщение, а затем он будет запускать пользовательский шаблон (код сценария) на лету.
3 ответа:
Вы, вероятно, хотите RazorEngine, который использует новый язык шаблонов Razor от Microsoft.
Это даже легче, чем ваш пример.
Вы можете взглянуть на проект усов, он очень зрелый и работает в обоих концах (заднем и переднем):
Удачи!
Вы используете ASP.NET веб-формы или ASP.NET MVC? Если это MVC, то уже существует множество различных ViewEngines, которые позволяют создавать страницы различными способами.
Смотрите сюда:
Http://sparkviewengine.com/, http://code.google.com/p/nhaml/