任何人都可以帮助我格式化以下内容吗?
if(system.datetime.now > 20:00:00 AND < 23:59:59)
NewDateTime = (system.datetime.now + 1 day) + time as 00:01:00
Run Code Online (Sandbox Code Playgroud)
即如果sysdate符合条件,则使NewDateTime = Sysdate + 1天,时间为00:01:00
谢谢
你不应该在这里处理格式化.我怀疑你想要的东西:
TimeSpan earliest = new TimeSpan(20, 0, 0);
TimeSpan latest = new TimeSpan(23, 59, 59);
DateTime now = DateTime.Now;
TimeSpan currentTime = now.TimeOfDay;
if (currentTime > earliest && currentTime < latest)
{
DateTime newDateTime = now.Date.AddDays(1).AddHours(1);
}
Run Code Online (Sandbox Code Playgroud)
这里的一个重点是,我只服用DateTime.Now 一次,而不是每次我们对"当前时间"感兴趣.这导致更好的一致性.
我也会质疑你的"最新"部分 - 你真的希望这种行为在23:59:59.5有所不同吗?难道你不是说"晚上8点以后的任何时间"吗?也许这也应该是包容性的?这将导致:
// Probably make this a static readonly field
TimeSpan earliest = new TimeSpan(20, 0, 0);
DateTime now = DateTime.Now;
TimeSpan currentTime = now.TimeOfDay;
if (currentTime >= earliest)
{
DateTime newDateTime = now.Date.AddDays(1).AddHours(1);
}
Run Code Online (Sandbox Code Playgroud)