- time
- The DateTime to which to add years.
- years
- The number of years to add.
A new DateTime that results from adding the specified number of years to the time parameter.
The day part of the resulting DateTime is affected if the resulting day is not a valid day in the resulting month of the resulting year. In this case, the day part is changed to the last valid day in the resulting month of the resulting year. The month part of the resulting DateTime remains the same as the specified DateTime. This implementation supports only the current era. Therefore, ArgumentException is thrown if the resulting year is outside the era of the specified DateTime. The time-of-day part of the resulting DateTime remains the same as the specified DateTime.
For example, February has 28 days, except during leap years when it has 29 days. If the specified date is the twenty-ninth day of February in a leap year and the value of the years parameter is 1, the resulting date will be the twenty-eighth day of February in the following year.
If years is negative, the resulting DateTime is earlier than the specified DateTime.
The DateTime.Kind property of the returned DateTime value always equals DateTimeKind.Unspecified. You can preserve the DateTime.Kind property of the time parameter by calling the DateTime.SpecifyKind(DateTime, DateTimeKind) method, as the following example shows.
code reference: System.Globalization.Calendar.AddMethods#8