我们正在设计一个应用程序,它将生成许多不同类型的文本输出,例如电子邮件、html、sms 等。输出将使用某种模板生成,数据来自数据库。我们的要求包括:
- 模板中的基本逻辑/计算字段。例如“ifs”和“for”循环,以及添加税收百分比等内容
- 运行时编辑。我们的用户需要能够根据自己的需要调整模板,例如更改样板文本、添加新逻辑等
- 多语种。我们需要为当前的文化选择正确的模板。
- 文化敏感。例如,日期和货币将根据当前的 ui 文化输出。
- 灵活性。我们需要模板能够处理多个重复组、层次结构等。
- 不能使用商业软件作为解决方案(例如 InfoPath)。我们需要能够随时修改源代码。
该应用程序是 c#.net。我们正在考虑使用 T4、XML + XSLT 或托管 Razor 引擎。鉴于语法对于非技术用户来说不会太繁琐,我们希望得到您的意见,您认为哪个模板引擎适合我们。我们也很乐意考虑尚未提及的内容。
谢谢。