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

XSLT转换日期时间到日期格式

如何解决《XSLT转换日期时间到日期格式》经验,为你挑选了2个好方法。

我正在尝试将日期时间转换为日期格式yyyy-MM-dd,因为我使用的是xsd.exe工具,xs:date数据类型会自动更改为datetime数据类型,因为.NET中没有类型完全匹配类型xs:date的框架.

但我无法让它发挥作用


        
48992 2009-01-29T00:00:00+01:00
48993 2009-01-30T00:00:00+01:00

试图将xml转换为


        
48992 2009-01-29
48993 2009-01-30

目前我正在使用这个XSLT



    
        
        
            




    
    
        
    

    
        
    
    
        
    



        
            
            
     

有谁知道一个很好的xslt转换.

提前致谢

我的代码的输出结果是

 

annakata.. 7

坦率地说,这对我来说是正确的 - 有时一个简单的子串就足够了.

但是,如果你在.NET领域并且你真的需要额外的功能,那么.NET有XSLT扩展对象


编辑:oic,你有一个基本的应用模板概念问题.试试这个(注意副本和根模板匹配):





    



    
        
            
            
    




        
        
                
        

        
                
        
        
                
        



模板是一个难以学习的概念,你可能最好从更简单的开始for-each,和/或你似乎可以用一些XSLT教程/书籍.



1> annakata..:

坦率地说,这对我来说是正确的 - 有时一个简单的子串就足够了.

但是,如果你在.NET领域并且你真的需要额外的功能,那么.NET有XSLT扩展对象


编辑:oic,你有一个基本的应用模板概念问题.试试这个(注意副本和根模板匹配):





    



    
        
            
            
    




        
        
                
        

        
                
        
        
                
        



模板是一个难以学习的概念,你可能最好从更简单的开始for-each,和/或你似乎可以用一些XSLT教程/书籍.



2> Scott White..:

在XPath 2.0中,格式化将变得更加容易,微软目前在过去8年中拒绝支持.由于格式问题实际上只对.Net中的XSLT持久存在,我喜欢使用自定义函数,这更简洁,更容易:

带格式化功能的XSLT:

    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt"
    xmlns:user="http://www.tempuri.org/User">

  
        
      

用法:



当您在.Net中执行XSLT时,请务必告诉它它是可信的(以便运行msxsl:script块).

XslCompiledTransform.Load(reader, XsltSettings.TrustedXslt, null);

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