我们正在设计一个应用程序,它将生成许多不同类型的文本输出,例如电子邮件,HTML,短信等。输出将使用某种模板生成,数据来自数据库。我们的要求包括:
该应用是c#.net。我们正在考虑使用T4,XML + XSLT或托管Razor引擎。鉴于语法对于非技术用户来说太难以承受,我们希望得到您认为对我们来说是正确的模板引擎的意见。我们很高兴考虑那些尚未提及的。
感谢。
答案 0 :(得分:3)
我非常犹豫在一个论坛上尝试回答这个问题,因为技术选择取决于比问题中传达的更多因素,包括风险态度,开源态度,以前的好坏。项目的经验,政治和领导等.XSLT相对于Razor的一大优势是它是一个标准,并且在多个平台上有多个实现(包括.NET上的至少三个实现!)所以没有锁定;但这似乎不是您的要求声明中的一个因素。而且你使用.NET这一事实表明供应商锁定并不是你担心的事情。
要记住的一点是,非程序员经常比程序员更快地接受XSLT。它基于规则的声明式方法及其XML语法有时会让程序员感到不舒服(它不像以前看到的那样),但最终用户通常会像鸭子一样接受它。
答案 1 :(得分:0)
我们决定选择Razor Hosting。我发布这个的原因是,如果我包含以下文章链接,我认为它会对其他人有所帮助:
Rick Strahl的这项出色工作使得Razor很容易上映。