当前位置:  开发笔记 > 编程语言 > 正文

AddExtensionObject - 性能

如何解决《AddExtensionObject-性能》经验,为你挑选了1个好方法。

.NET XSLT引擎允许通过AddExtensionObject方法将对象传递给XSLT处理引擎.

有人可以评论使用它来检索要在XSLT中使用的本地化字符串的性能吗?



1> Dimitre Nova..:

如果认为XSLT转换的一部分效率低下,则可以使用扩展对象来提高性能.

虽然使用扩展方法的方法不会降低性能(不包括错误和低效的代码),但如果使用适当的XSLT技术来访问本地化字符串,它们将无法显着提高性能.

如果不迫切需要扩展对象,那么创建纯XSLT解决方案总是好的.这为任何平台提供了可移植性的额外好处,可提供兼容的XSLT处理器.

可以将给定语言的所有本地化字符串放在单独的XML文件中.将使用XSLT document()函数访问此文件.每个字符串将@msgId使用指令构建的索引通过其属性编制索引.在转换中,将使用XSLT key()函数获取单个消息.

下面是一个小代码示例,演示如何通过msgId检索消息,以及如何从xml文件中检索语言代码,其中存储了所有语言的消息.为方便起见,我们将消息放在XSLT样式表本身中.实际上,消息可以位于单独的XML文件中:


 
  
 
 
 
  Good morning.
  Good afternoon.
  Good evening.
 
 
  Guten morgen.
  Guten tag.
  Guten abend.
 
    
      
    
      
       MornGreet
       AftnGreet
       EvnGreet
      
    
   
    
   
    

当此转换应用于任何源XML文档(忽略)时,将生成所需的结果:

Guten abend.

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有