一次构建一个DateTime

Ear*_*rlz 1 c# serialization datetime

我试图在C#中一次构建一个DateTime,就像在整个日期不在构造函数中一样.我不明白什么是错的.

DateTime d = new DateTime((long)0);
d.AddYears(2000);
Run Code Online (Sandbox Code Playgroud)

d.Years仍然将等于1,但.此外,我必须将日期存储为长.所以我不能只用一个巨大的构造函数构建日期,我也不能拥有一个持久的DateTime实例,所以我把它转储成很长的然后恢复它然后我开始使用值为0.我想从一个不同于零的价值开始?

到底出了什么问题?

Pie*_*ant 16

DateTime结构是不可变的,这意味着它的属性不能更改.

AddYears方法返回必须使用的新DateTime:

DateTime d = new DateTime((long)0);
d = d.AddYears(2000);
Run Code Online (Sandbox Code Playgroud)