当前位置 : 主页 > 编程语言 > c语言 >

如何使用C#代码检测XSLT转换中的“解析时间”?

来源:互联网 收集:自由互联 发布时间:2021-06-25
我编写了一个用于触发 XML to XML(XSLT)转换的C#代码.由于转换取决于XML的大小,我的输入XML文件可以从Kilo-Bytes到Mega-Bytes变化,我想检测“解析输入文件和生成输出所花费的时间”..我可以显
我编写了一个用于触发 XML to XML(XSLT)转换的C#代码.由于转换取决于XML的大小,我的输入XML文件可以从Kilo-Bytes到Mega-Bytes变化,我想检测“解析输入文件和生成输出所花费的时间”..我可以显示“价值“通过GUI或控制台,没有问题.目的是在变量中保存“以秒或毫秒为单位的时间”
任何有关这个想法的参考或教程链接也会有所帮助..

它取决于系统配置吗?
我的意思是,根据环境,解析时间因系统而异?
如果是..那么,是否有可能使它成为系统独立的代码?
急切地等待回复..
比Q ..

您缺少转换总时间的重要组成部分:编译样式表本身所需的时间.

这是如何得到这个时间:

// Create the XslCompiledTransform and load the stylesheet.
XslCompiledTransform xslt = new XslCompiledTransform();

Stopwatch watch = Stopwatch.StartNew();  
  xslt.Load("someXsl.xsl");
watch.Stop();   

TimeSpan xsltCompileTime = watch.Elapsed;

请注意,与运行典型的小变换所需的时间相比,使用XslCompiledTransform加载/编译XSLT样式表的时间通常非常大.这就是为什么在生产系统中,人们会考虑缓存加载的样式表,并在不加载后重复使用它.

网友评论