我有 2 個日期時間對象需要合并。這包含正確的日期,但不需要時間部分。DateTime? sessionDate = fl.EventDateTimeStart這包含正確的時間,但日期部分需要是上面 sessionDate 對象的日期值。DateTime? sessionStartTime = g.GameStartTime.Value我嘗試使用各種 DateTime toString() 方法中的一些,但發現因為它們是類的一部分,所以它們需要保留 DateTime? 類型,所以我不能只將它們轉換為字符串。所以我想出了這個非常丑陋的方法: sessionStartTime = new DateTime(
fl.EventDateTimeStart.Value.Year,
fl.EventDateTimeStart.Value.Month,
fl.EventDateTimeStart.Value.Day,
g.GameStartTime.Value.Hour,
g.GameStartTime.Value.Minute,
g.GameStartTime.Value.Second)有沒有更優雅的方法來做到這一點?
1 回答

皈依舞
TA貢獻1851條經驗 獲得超3個贊
當然。
var result = fl.Value.Date + g.Value.TimeOfDay;
DateTime.Date
返回DateTime
時間部分設置為午夜的 a。DateTime.TimeOfDay
獲取TimeSpan
包含自午夜以來經過的一天的分數。
確保你的兩者都DateTimes
具有相同的Kind
,否則結果可能不是你所期望的。
- 1 回答
- 0 關注
- 74 瀏覽
添加回答
舉報
0/150
提交
取消