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

C#不使用.AddYears(1)添加年份;,c#,date,time,C#,Date,Time,我正在测试C#.AddYears();功能,但由于某种原因,我不能让它工作 nu = DateTime.Now; MessageBox.Show(nu.ToString()); nu.AddYears(18); MessageBox.Show(nu.ToString()); 为什么两个MessageBox完全相同 出于某种原因,它似乎没有给我的nu变量增加18年 有人知道我在这段代码中做错了什么吗?DateTime值是不可变的AddYears不修改当前实例,而是返回一个新实例 这意味着你应该:

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

nu = DateTime.Now;
MessageBox.Show(nu.ToString());
nu.AddYears(18);
MessageBox.Show(nu.ToString());
为什么两个MessageBox完全相同

出于某种原因,它似乎没有给我的nu变量增加18年


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

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

这意味着你应该:

nu = nu.AddYears(18);

显示的日期与最初声明的日期相同

这样做,

bu = nu.AddYears(18);

MessageBox.Show(nu.AddYears(18)):)好的,我要试试那个谢谢!