You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改C# DateTime日期判断代码实现延后2天触发指定逻辑

修改思路

  • 避免直接比对日期字符串,优先将基准日期字符串解析为DateTime类型计算时间差,不受系统区域格式影响,稳定性更高
  • 计算当前日期与基准日期的间隔天数,调整判断阈值为2天即可满足需求

修改后代码

首先需要在代码文件顶部引入命名空间:

using System.Globalization;

业务逻辑调整为如下内容(推荐方案,兼容性更强):

string today = "#datetime"; // 此处为你的基准日期字符串,格式为dd/MM/yyyy
if (DateTime.TryParseExact(today, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime baseDate))
{
    // 仅取日期部分比对,忽略时分秒的影响
    int passedDays = (DateTime.Now.Date - baseDate.Date).Days;
    // 间隔满2天触发原if分支逻辑
    if (passedDays >= 2)
    {
        Application.Run(new ClipboardNotification.NotificationForm());
    }
    else
    {
        Application.Run(new ClipboardNotification2.NotificationForm());
    }
}
else
{
    // 可在此处添加基准日期格式异常的处理逻辑
    Application.Run(new ClipboardNotification2.NotificationForm());
}

如果要保留原有字符串比对的写法,也可以使用以下简化调整方案(不推荐,易受系统日期格式设置影响出错):

string today = "#datetime";
if (today == DateTime.Now.AddDays(-2).ToString("dd/MM/yyyy"))
{
    Application.Run(new ClipboardNotification.NotificationForm());
}
else
{
    Application.Run(new ClipboardNotification2.NotificationForm());
}

内容的提问来源于stack exchange,提问作者mariejose

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:24:03