EastAsianLunisolarCalendar.AddMonths(DateTime, Int32) 方法

定义

计算与指定日期相距指定月数的日期。

public:
 override DateTime AddMonths(DateTime time, int months);
public override DateTime AddMonths (DateTime time, int months);
override this.AddMonths : DateTime * int -> DateTime
Public Overrides Function AddMonths (time As DateTime, months As Integer) As DateTime

参数

time
DateTime

DateTime,将向其添加 months

months
Int32

要添加的月数。

返回

一个新的 DateTime,通过在 time 参数中添加指定的月数得到。

例外

结果超出了 DateTime 支持的范围。

months 小于-120000 或大于 120000。

time 小于 MinSupportedDateTime 或大于 MaxSupportedDateTime

注解

如果生成的日期不是结果 DateTime 年份的月中的有效日期,则结果的日期部分将受到影响。 在这种情况下,日期部分将更改为结果年份的结果月份中的最后一个有效日期。 如果生成的月份在指定 DateTime的年份之外,则结果DateTime的年份部分将受到影响。 此实现仅支持当前纪元。 因此, ArgumentException 如果生成的年份在指定 DateTime的纪元之外,则会引发 。 生成的 DateTime 的一天中的时间部分与指定的 DateTime保持相同。

例如,如果指定的月份是 10 月(有 31 天),则指定的日期是该月的第 31 天,并且 参数的 months 值为 6,则生成的年份比指定的年份多一个,生成的月份为 4 月,生成的日期为第 300 天,即 4 月的最后一天。

如果 参数的 months 值为负值,则生成的 DateTime 早于指定的 DateTime

Kind返回DateTime值的 属性始终等于 DateTimeKind.Unspecified。 可以通过调用 DateTime.SpecifyKind 方法保留 Kind 参数的 time 属性,如以下示例所示。

returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind);
returnTime = DateTime.SpecifyKind(cal.AddMonths(time, months), time.Kind)

适用于