我在视图中进行了简单的比较,看看过去是否有事件:
<% if (model.EventDate < DateTime.Now)
{ %>
<td style="color: red;">
<% }
else
{ %>
<td>
<% } %>
这在我的开发机上运行正常,通过Cassini运行,但在服务器上它似乎是在解读2010年12月1日,而不是1月12日。
我应该如何进行此比较,以确保无论运行时环境如何,它都能正常工作?
更新:EventDate是一个DateTime,来自一个数据库,它有正确的日期:select MONTH(EventDate)返回1,选择DAY(EventDate)返回12.。
答案 0 :(得分:0)
比较.NET中的两个DateTime
实例始终有效。问题在于您设置model.EventDate
,也许您正在从字符串中解析它。
答案 1 :(得分:0)
服务器在与开发框不同的文化下运行。这是人们将日期保存为UTC的原因之一。
答案 2 :(得分:0)
作为一种解决方法,您可以尝试将以下内容添加到您的web.config中(它是&lt; system.web&gt;的孩子):
<globalization culture="en-US" />
HTHS,
查尔斯