C#不用.AddYears(1)添加年份;

use*_*368 2 c# time date

我正在尝试测试C#.AddYears(); 功能,但由于某种原因,我不能让它工作.

nu = DateTime.Now;
MessageBox.Show(nu.ToString());
nu.AddYears(18);
MessageBox.Show(nu.ToString());
Run Code Online (Sandbox Code Playgroud)

为什么两个MessageBox都完全一样?

由于某种原因,我的nu变量似乎没有增加18年.

有谁知道我在这段代码中做错了什么?

Cri*_*scu 11

DateTime值是不可变的.AddYears不修改当前实例,而是返回一个新实例.

这意味着你应该这样做:

nu = nu.AddYears(18);
Run Code Online (Sandbox Code Playgroud)