在 C# 中,確定一週的開始日期對於各種場景(例如調度或資料聚合)非常有用。要實現此目的,我們需要考慮一週開始日期的定義,這可能會因具體的約定或地區而異。
對於以星期一為一週開始日期的地區,我們可以使用擴充方法:
<code class="language-csharp">public static class DateTimeExtensions { public static DateTime StartOfWeek(this DateTime dt) { int diff = dt.DayOfWeek - DayOfWeek.Monday; return dt.AddDays(-diff).Date; } }</code>
使用方法:
<code class="language-csharp">DateTime mondayStart = DateTime.Now.StartOfWeek();</code>
對於以星期日作為一週開始日期的地區,我們可以稍微修改擴展方法:
<code class="language-csharp">public static class DateTimeExtensions { public static DateTime StartOfWeek(this DateTime dt) { int diff = dt.DayOfWeek - DayOfWeek.Sunday; return dt.AddDays(-diff).Date; } }</code>
使用方法:
<code class="language-csharp">DateTime sundayStart = DateTime.Now.StartOfWeek();</code>
這些擴充方法提供了一種靈活且可自訂的方法來根據所需的約定確定一週的開始日期。
以上是如何在 C# 中確定一週的開始(星期一或星期日)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!