gpt4 book ai didi

c# - 约会时间? AddDays 扩展方法

转载 作者:太空狗 更新时间:2023-10-30 00:18:52 26 4
gpt4 key购买 nike

我想编写一个扩展方法,将一天添加到 Nullable DateTime,但修改日期本身。

我想按如下方式使用它:

someDate.AddOneDay();

这直接改变了 someDate 的值。

我最初写的代码是:

public static DateTime? AddOneDay(this DateTime? date)
{
if (date.HasValue)
{
date.Value = date.Value.AddDays(1);
}

return null;
}

但这不起作用,因为引用已更改,因此以这种方式调用它不会改变 someDate 的值。

有没有办法实现这一点并避免像这样的代码:

someDate = someDate.AddOneDay();

我也在考虑 DateTime 属性的一些 setter ,但它们没有任何......

public int Day { get; }
public int Month { get; }
public int Year { get; }

最佳答案

你不能 DateTime 是不可变的,应该保持这种状态。

只是做:

someDate = someDate.AddOneDay();

如果您想更具体一些,您可以将函数重命名为:

DateTime? someDate = someDate.AddOneDayOrDefault();

关于c# - 约会时间? AddDays 扩展方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28020719/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com