我有一個控件,您可以將元素拖入Gantt
,如timetable
。當天最低時間爲8 a.m
,最高時間爲4 p.m
。有沒有一種優雅的方式,我可以告訴DateTime
結構採取這個時間間隔,而不是24 hour one
?自定義日期時間天長度
回答
您當然不能改變DateTime現有方法的行爲,但擴展方法在這裏會派上用場。
根據您的要求,如果您將當前日期添加8小時,則您希望日期向前移動24小時。 (如果我的理解不正確,請糾正我)。
您可以使用AddWorkHours創建擴展方法(或者可能更適合您的命名約定),它將以小時數作爲輸入(例如8),但實際上將24小時添加到當前日期。
該代碼將如下所示。
public class DateTimeExtensions
{
public static DateTime AddWorkHours(this DateTime dateTime, int workHours)
{
var workHoursPerday = 8; //Here 8 also can be configurable value if you have different working hours for different customer.
var daysToAdd = (int) workHours/workHoursPerday; //You can have validation here to check if workHours are in exact multiplex of 8.
//Also you can have rounding off logic.
dateTime.AddDays(daysToAdd);
}
}
你只需要確保在正確的地方調用正確的方法。 我希望這至少會給你一些想法來解決你的問題。
這是一個很好的嘗試,但我沒有看到這個代碼修復的問題 –
這是一個通用的邏輯。您可以隨時根據業務需求定製邏輯。檢查一週中的哪一天會改變添加的天數也會解決週末問題。 –
確實...它不能解決這個特定的問題,但作者可以將它用作提示並對其進行定製以適應需求。 –
- 1. 日期時間1天長度
- 2. 自定義日期時間,將當前日期添加30天
- 3. 自定義日期時間,自定義日期格式
- 4. 排序自定義日期時間C#
- 5. 自定義日期時間格式4
- 6. 自定義日期時間格式
- 7. 自定義日期時間結構
- 8. MySQL Query自定義日期時間
- 9. 自定義SQL日期時間格式
- 10. 提取自定義日期自變量的日期/時間
- 11. 班「漂亮的日期/時間」長度
- 12. 設置明天自定義日期swift
- 13. 自定義長日期格式js
- 14. 日期和時間選擇自定義格式日期變更
- 15. SQL Server的日期時間的自定義日期
- 16. 如何將日期時間字符串轉換爲自定義日期時間
- 17. 日期時間加1天
- 18. 時間今天的日期
- 19. 在python中自定義日期時間對象的時間
- 20. 的日期時間自定義綁定時EditorTemplate到位
- 21. 調用問題時自定義API的時間長度
- 22. 創建自定義日期範圍,每天22小時python
- 23. 調度程序時間線日期長時間捕捉事件
- 24. C#SQL命令:其中,今天的日期和自定義時間
- 25. 日期時間字段收到天真的日期時間
- 26. 時間戳到長日期時間
- 27. 比較日期期間和日期期限長度
- 28. 日期時間自定義格式並不如預期
- 29. 長日期時間轉換爲日期時間C#
- 30. Seaborn light_palette自定義長度
TimeSpan結構是否用於時間跨度? –
是的。但這不是重點。如果我將8小時添加到「DateTime」中,它應該與添加1天具有相同的效果 – Andro
我認爲他想要做的是在基於從8開始到16結束的日期對結構進行時間計算(並且可能採用在週末也是如此),並提出像最早開始時間這樣的問題XXX任務有30個小時的工作......什麼時候完成? – DarkSquirrel42