字符串模板中的回调或简单算术

本文关键字:简单 回调 字符串 | 更新日期: 2023-09-27 17:55:53

我想在 StringTemplate 中使用这样的东西 - 调用在执行渲染的应用程序中定义的函数,这可能吗?

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

我可以只为这个字段使用自定义类型/类,但这似乎有点被黑客入侵,而不是问题的真正解决方案,而且据我所知,它不允许我传递参数。

我想要这个是因为我想允许用户自定义模板,例如:我知道我有多少宽度可用于文章,但我希望用户能够指定填充,以便我可以在该模板内生成最佳图像缩略图。

或者,如果可以使用简单的算术,那将是问题的另一种解决方案,也许是这样的:

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

我一直在四处寻找这个,没有找到任何信息......

我宁愿使用 StringTemplate,因为应用程序已经在使用它,但如果它更合适,我可以切换到其他东西,也许我应该看看 NVelocity?

字符串模板中的回调或简单算术

正如I82Much在他的评论中所说,StringTemplate不支持计算。

一种解决方案是使用新属性来丰富模型,该属性的值预先计算为"width-50"。

如果你正在寻找替代方法,并且使用的是 .net 4.0,则可以托管 Razor 视图引擎并将其用作模板解决方案。