Telerik网格日期列日期为一天

时间:2012-06-21 13:28:39

标签: c# asp.net-mvc-3 datetime telerik-grid

我有一个telerik网格,其中我有一个列,其中我显示用户的DateOfBirth。下面是我的Telerik Grid列的部分代码:

columns.Bound(c => c.DOB).Title("DateofBirth").Format("{0:MM/dd/yyyy}");

由于我必须在UI上显示日期部分,我将从模型中返回.Date,如下所示:

public DateTime? DOB
    {
        get
        {
            if (DateOfBirth > DateTime.MinValue)
                return DateOfBirth.Date;
            else
                return null;
        }
    }

其中DateOfBirth是我从具有日期和时间格式的数据库获得的日期。问题是我在某些情况下将日期视为一天而不是总是如此。可能是什么原因?

例如,如果从DB返回的日期是06/21/2012 12:00:00 PM,那么我将其作为06/20/2012

1 个答案:

答案 0 :(得分:1)

这可能与文化特定的日期时间有关。 你在使用不同的文化吗?例如,我遇到了数据库是普遍时间的场景,我不得不解析日期以获得我的特定文化。

几个小时的更改最终将日期更改为一天不同。

以下是示例用法: http://msdn.microsoft.com/en-us/library/ey1cdcx8

代码示例:

DateTime date = DateTime.Parse(dbvalue, null, System.Globalization.DateTimeStyles.AdjustToUniversal);

或System.Globalization.DateTimeStyles.AssumeLocal到达本地。