DateTime.DayOfWeek return 错误的一天

DateTime.DayOfWeek return wrong day

我创建了一个 LINQ 查询来获取数据库中某个日期的 DayOfWeek。查询(我试图弄清楚,所以这只是我在 LinqPad 中使用的查询)看起来像这样:

(from e in Containers
 where e.IsEmpty == false &&
     e.DepotArrivalRetunDateTime.GetValueOrDefault().Date > DateTime.Today.AddDays(-7) &&
     e.DepotArrivalRetunDateTime.GetValueOrDefault().Date <= DateTime.Today
 select
 new
 {
     WeekDay = e.CustomerDepartureReturnDateTime.GetValueOrDefault().DayOfWeek,
     Bla = e.DepotArrivalRetunDateTime.GetValueOrDefault().Date
 }).ToList()

我在return中得到的值如下table:

Tuesday    7/6/2016 12:00:00 AM 

Tuesday    7/6/2016 12:00:00 AM 

Tuesday    7/5/2016 12:00:00 AM 

Monday    7/4/2016 12:00:00 AM 

Thursday    7/7/2016 12:00:00 AM 

如您所见,7/5/2016 的 returned DayOfWeekTuesday 以及 7/6/2016DayOfWeek应该是 Wednesday。我不知道问题出在哪里。如果能提供任何帮助,我将不胜感激。

您的代码从 CustomerDepartureReturnDateTime 获取星期几,但它从 DepotArrivalRetunDateTime 获取日期。

问题可能与这些不同表或数据库中的 DATE 格式有关,因为 6 月 7 日也是星期二。

我的意思是,一个数据集配置为MM/DD,另一个是DD/MM。