Обратные вызовы или простая арифметика в StringTemplate - PullRequest
4 голосов
/ 09 мая 2011

Я бы хотел использовать что-то подобное в StringTemplate - для вызова функции, определенной в приложении, которое выполняет рендеринг, это возможно?

<div> $renderArticle(article,width,padding)$ </div>

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

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

Или, если возможно, использовать простую арифметику, это было бы другим решением проблемы, возможно, что-то вроде этого:

... width="$width-50$ ...

IЯ искал все это и не нашел никакой информации ...

Я бы предпочел использовать StringTemplate, потому что приложение уже использует его, но я мог бы переключиться на что-то другое, если это более подходящее, возможно, я должен взятьвзгляд на NVelocity?

1 Ответ

2 голосов
/ 04 июля 2011

Как говорит I82Much в своем комментарии, StringTemplate не поддерживает вычисления.

Одно из решений - обогатить вашу модель новым свойством, значение которого предварительно рассчитывается как width-50.

Если вы ищете альтернативу и используете .net 4.0, вы можете разместить движок Razor View и использовать его в качестве шаблонного решения.

...