则DateDiff为一把umbraco月

问题描述:

我试图让几个月的两个日期之间的号码在我的XSLT文件像这样:则DateDiff为一把umbraco月

<xsl:variable name="now" select="umbraco.library:CurrentDate()"/> 
<xsl:value-of select="umbraco.library:DateDiff('2010-12-01', $now, 'm')" /> 

不幸的是,这似乎给我分钟的两个日期之间的数字,而比月数。我找不到任何字符串作为第三个参数输入几个月。有没有对这个地方的参考?或者我如何查找月数?

DateDiff方法不支持几个月。

它只支持年,分或秒。

要计算月的差异,您需要进行一些数学杂耍或使用内联c#方法或编写您自己的XSLT扩展方法。

More info on inline c#

有创建XSLT扩展方法,包括对他的主要一把umbraco现场几个视频教程很多教程。

More info on XSLT exensions

Umbraco videos on XSLT extensions

我结束了写我自己喜欢蒂姆功能提示:

public static int MonthDiff(string date1, string date2) 
{ 
    DateTime dt1 = DateTime.Parse(date1); 
    DateTime dt2 = DateTime.Parse(date2); 

    return ((dt2.Year - dt1.Year) * 12) + (dt2.Month - dt1.Month); 
} 

我敢肯定,这可以更好地概括,但是这对我来说不够好。