我编写了用于触发 XML 到 XML (XSLT) 转换的 C# 代码。由于转换取决于 XML 的大小,而我的输入 XML 文件可以从千字节到兆字节不等,我想检测“解析我的输入文件和生成输出所花费的时间”..我可以显示“value"通过 GUI 或控制台,没问题。目的是将“以秒或毫秒为单位的时间”保存在变量中
任何与此想法相关的引用或教程链接也会有所帮助..
是否取决于系统配置?
我的意思是……解析时间是否因环境而异?
如果是..那么,是否有可能使其成为一个系统独立的代码?
热切等待回复..
比Q..
最佳答案
我不确定我是否完全理解,但也许只是:
Stopwatch watch = Stopwatch.StartNew();
// where "xslt" is your prepared XslTransform or XslCompiledTransform
xslt.Transform(input, args, results);
watch.Stop();
TimeSpan elapsed = watch.Elapsed; // how long
如果你想要以秒和毫秒为单位的耗时:
string seconds = elapsed.TotalSeconds.ToString("0.000");
如果你想分别为解析和转换计时:
Stopwatch watch = Stopwatch.StartNew();
XPathDocument sourceDoc = new XPathDocument(location);
watch.Stop();
TimeSpan parseTime = watch.Elapsed;
watch.Reset();
watch.Start();
xslt.Transform(sourceDoc, args, results);
watch.Stop();
TimeSpan transformTime = watch.Elapsed;
关于c# - 如何使用 C# 代码检测 XSLT 转换中的 "parsing time"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1794978/