有没有一种简洁的方法在C#中编写这个逻辑?
if ((DateTime.Now >= "8:00 AM") && (DateTime.Now < 5:00 PM))
{// do something}
Run Code Online (Sandbox Code Playgroud)
我正在制作一个演示应用程序,我希望在工作日发生一些事情,但我不希望这些代码突出很多(很多演员=坏).(因为我希望我的演示内容更容易看到.
Jon*_*eet 11
好吧,你可以这样做:
DateTime now = DateTime.Now;
if (now.Hour < 8 || now.Hour >= 17)
Run Code Online (Sandbox Code Playgroud)
请注意,我通常更喜欢只使用一次DateTime.Now属性,将结果复制到如上所述的局部变量中 - 这样,由于调用之间的时间变化,您不会得到奇怪的可能性.这里不是问题,但可能在其他情况下.
另一种可能性是使用,DateTime.TimeOfDay如果你想以这种方式处理事情.我认为上面的内容就像它获得的一样简单.
编辑:史蒂文指出我将原始逻辑中的&&更改为|| - 你的原始逻辑永远不会工作,因为它永远不会在上午8 点之前和下午5 点之后.上述工作适用于"如果不是在工作日" - 如果您想要"如果它在工作日",您只需要:
DateTime now = DateTime.Now;
if (now.Hour >= 8 && now.Hour < 17)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
297 次 |
| 最近记录: |