C# 希望从asp.net mvc中的当前日期时间减去数据库中的日期时间
我想从当前日期时间减去数据库表中的日期时间,并与大于(>)运算符进行比较 我想比较当前日期时间和数据库中的日期时间,如果我的数据库日期减去当前日期大于30天,那么我想显示我的标签红色,否则为默认值 这就是我尝试过的C# 希望从asp.net mvc中的当前日期时间减去数据库中的日期时间,c#,asp.net-mvc,razor,model-view-controller,C#,Asp.net Mvc,Razor,Model View Controller,我想从当前日期时间减去数据库表中的日期时间,并与大于(>)运算符进行比较 我想比较当前日期时间和数据库中的日期时间,如果我的数据库日期减去当前日期大于30天,那么我想显示我的标签红色,否则为默认值 这就是我尝试过的 <label style="@(DateTime.Now-item.NewLinen>30 ? "color:red;": "")">New Linen</label> 新亚麻布 我在下面画红线,给梅塞奇看 运算符不能应用于“times
<label style="@(DateTime.Now-item.NewLinen>30 ? "color:red;": "")">New Linen</label>
新亚麻布
我在下面画红线,给梅塞奇看
运算符不能应用于“timespan”和int>
请帮我做一下这个我通常会稍微改变框架,并使用如下方法:
<label style="@((item.NewLinen.HasValue && item.NewLinen.Value.AddDays(30) < DateTime.Now) ? "color:red;": "")">New Linen</label>
新亚麻布
但更多的是品味问题。如果你想使用
TimeSpan
,你需要构造另一个时间跨度来进行比较,具体来说是30天,而不是30秒或任何其他单位(这就是为什么不允许直接与int
进行比较)我通常会稍微改变帧,并使用类似的方法:
<label style="@((item.NewLinen.HasValue && item.NewLinen.Value.AddDays(30) < DateTime.Now) ? "color:red;": "")">New Linen</label>
新亚麻布
但更多的是品味问题。如果您想使用
TimeSpan
,您需要构造另一个时间跨度来进行比较,具体来说是30天,而不是30秒或任何其他单位(这就是为什么不允许与int
直接比较的原因)这是因为它不知道要比较什么->30秒?30小时?3万年(实际上,我不认为TimeSpan
支持最后一个)@Damien\u不信者,那么这个问题的解决方案是什么呢?因为它不知道你想要比较什么->30秒?30小时?30000年(事实上,我不认为TimeSpan
支持最后一个)@Damien\u不信者,那么这个问题的解决方案是NewLinen
一个可空的DateTime
?如果是这样,那么当它实际上是空的时,您希望发生什么事情(然后我可以考虑这些细节来更正我的答案)。那么NewLinen
也是空的DateTime
?如果是这样的话,那么当它实际上是null
(然后我可以根据这些细节更正我的答案)时,您希望发生什么。