C# 添加日期&;时间并转换为UTC

C# 添加日期&;时间并转换为UTC,c#,asp.net,C#,Asp.net,我有两次约会。日期1和日期2 日期1包含“2010年12月10日12:00:00AM”。日期2包含“2010年10月10日03:00:00PM” 我只想从Date1中提取日期,从Date2中提取时间并加入它们 示例“2010年12月10日03:00:00PM” 有什么想法吗 谢谢 UTC从何而来?将为您提供日期部分和时间部分,因此: DateTime date3 = date1.Date + date2.TimeOfDay; 应该做您想做的。如果您要转换为UTC,您可能希望两个日期都转换为UT

我有两次约会。日期1和日期2

日期1包含“2010年12月10日12:00:00AM”。日期2包含“2010年10月10日03:00:00PM”

我只想从Date1中提取日期,从Date2中提取时间并加入它们

示例“2010年12月10日03:00:00PM”

有什么想法吗

谢谢

UTC从何而来?

将为您提供日期部分和时间部分,因此:

DateTime date3 = date1.Date + date2.TimeOfDay;

应该做您想做的。

如果您要转换为UTC,您可能希望两个日期都转换为UTC,如果时区差异跨越到另一个日期。可能是因为不清楚的原因,您没有这样做,在这种情况下,请从下面删除相关转换:

date1.ToUniversalTime().Date + date2.ToUniversalTime().TimeOfDay
这还假设两个日期都是当地时间。您可能希望添加对
Kind
属性的检查:

(date1.Kind == DateTimeKind.Utc ? date1 : date1.ToUniversalTime()).Date + (date2.Kind == DateTimeKind.Utc ? date2 : date2.ToUniversalTime()).TimeOfDay
(date1.Kind == DateTimeKind.Utc ? date1 : date1.ToUniversalTime()).Date + (date2.Kind == DateTimeKind.Utc ? date2 : date2.ToUniversalTime()).TimeOfDay