使用XSLT生成文件时适当的因子分解

时间:2015-01-05 08:57:03

标签: c# xslt xslt-1.0

在我正在研究的系统的特定部分中,我们使用XSLT(用于电子邮件,打印和显示)生成PDF和HTML文件。正在打印的业务模型使用代码(c#)。

在设计模式时,我特别考虑了打印文档的要求,因为XSLT比C#更难(可能只适合我?)。例如,我从业务模型生成聚合值和表,以便在文档上显示。这些决定并不能很好地转化为可能使用类似Xml的其他领域。

我现在面临着其他人使用Xml的问题,因此破坏了SoC。

我倾向于拍摄他们最初锁定的Xml的快照,并为他们提供一种新方法。我个人认为没有问题(面对DRY),但其他人可能很难理解权衡。我的推理有缺陷吗?有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

我知道这是个人的事情,但我的选择总是将尽可能多的逻辑放在XSLT代码而不是C#代码中 - 与你正在做的相反。这意味着您使用的是更高级别的声明性语言,以及专为操作XML而设计的语言。当然,有一个学习曲线,但在学习曲线的顶部,你会发现阳光普照的高地。并且不要让自己被XSLT 1.0的限制所拖延:2.0抛弃所有这些问题,你只需要准备好抛弃微软并使用第三方技术(微软停止在XML中做任何新的事情)大约十年前的空间,但这并不意味着你必须坚持过去。)