我有两个约会。 Date1和Date2
Date1包含“10/12/2010 12:00:00 AM”。 Date2包含“10/10/2010 03:00:00 PM”
我想从Date1中仅提取日期,并仅从Date2中提取时间并加入它们。
示例“10/12/2010 03:00:00 PM”。
有什么想法吗?
由于
答案 0 :(得分:3)
DateTime date3 = date1.Date + date2.TimeOfDay;
UTC进入哪里?
答案 1 :(得分:2)
DateTime.Date
会为您提供日期部分,DateTime.TimeOfDay
会为您提供时间部分,所以:
DateTime date3 = date1.Date + date2.TimeOfDay;
应该做你想做的事。
答案 2 :(得分:1)
如果您要转换为UTC,则可能需要同时使用这两个日期,以便时区差异跨越另一个日期。也许你不是出于不清楚的原因,在这种情况下从下面删除相关的转换:
date1.ToUniversalTime().Date + date2.ToUniversalTime().TimeOfDay
这也假定日期都是当地时间。您可能希望添加Kind
属性的检查:
(date1.Kind == DateTimeKind.Utc ? date1 : date1.ToUniversalTime()).Date + (date2.Kind == DateTimeKind.Utc ? date2 : date2.ToUniversalTime()).TimeOfDay