c# - 在 C# 中处理日期

标签 c# asp.net datetime

我有很多公司,每个公司都有开业日期和截止日期,例如:

Company  Open   Close

A        08.00  22.00     (close in the **same** day)
B        10.00  02.00     (close in the **second** day)
C        14.00  03.00     (close in the **second** day)

在网页上,用户必须看到公司列表并根据当前时间(服务器时间)显示每个公司的状态(打开关闭) )

问题: 当公司在同一天开放和关闭时(A)很容易获得状态 在以下算法中:isOpen = (NOW > OpenTime AND NOW < ClosingTime) ,但是如果公司在第 1 天营业并且在第 2 天关闭( B , C )如果用户在 1.00 检查页面,公司 B 将显示关闭(因为 (1.00 > 10.00 AND 1.00 < 02.00)False ) 但它是实时打开的。

如何解决这个问题(当关闭时间日与开放时间日不同时)

最佳答案

我能想到的最简单的解决方案是检查列出的关闭时间是否小于打开时间并加上 24 小时,然后检查该值

isOpen = (NOW > OpenTime AND NOW < (ClosingTime < OpeningTime ? ClosingTime + 24.00 : ClosingTime)

关于c# - 在 C# 中处理日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9317208/

相关文章:

jquery - JSON 日期未正确传递到 Controller

c# - 限制每秒绑定(bind)更新

c# - 目标文件 "D:\Users\user-pc\Desktop\testing\dest"是目录,不是文件。

c# - Xamarin Forms Android 出 java.lang.OutOfMemoryError 异常

asp.net - 如何检查用户是否从表单中提交了阿拉伯语单词?

javascript - 将 GridView 列值传递给 Javascript 函数 - OnClientClick

python - 如何计算 pandas 中事件之间的时间

c# - 在单个 Web API 方法上弃用多个路由中的特定路由

c# - Kendo TreeView 服务器端绑定(bind)选择第一个父子节点

python - 如何将整数时间戳转换为日期时间