Heim >Backend-Entwicklung >C++ >Wie erhalte ich den Start der Woche (Sonntag oder Montag) in C#?

Wie erhalte ich den Start der Woche (Sonntag oder Montag) in C#?

DDD
DDDOriginal
2025-01-22 14:06:12381Durchsuche

How to Get the Start of the Week (Sunday or Monday) in C#?

Berechnung des Startdatums der Woche in C#

In diesem Artikel wird gezeigt, wie Sie in C# mithilfe des aktuellen Datums und der aktuellen Uhrzeit ganz einfach den Wochenanfang (entweder Sonntag oder Montag) ermitteln können. Dies erreichen wir mithilfe einer prägnanten Erweiterungsmethode.

Implementierung der Erweiterungsmethode:

<code class="language-csharp">public static class DateTimeExtensions
{
    public static DateTime WeekStart(this DateTime dt, DayOfWeek firstDayOfWeek)
    {
        int dayDifference = (7 + (dt.DayOfWeek - firstDayOfWeek)) % 7;
        return dt.AddDays(-dayDifference).Date;
    }
}</code>

Verwendungsbeispiele:

Die Erweiterungsmethode WeekStart vereinfacht das Abrufen des Startdatums der Woche. So verwenden Sie es:

  • Montag als erster Tag:
<code class="language-csharp">DateTime mondayStart = DateTime.Now.WeekStart(DayOfWeek.Monday);</code>
  • Sonntag als erster Tag:
<code class="language-csharp">DateTime sundayStart = DateTime.Now.WeekStart(DayOfWeek.Sunday);</code>

Dieser Ansatz bietet eine saubere und effiziente Möglichkeit, den Wochenanfang zu bestimmen, unabhängig davon, ob Sie ihn als Sonntag oder Montag definieren.

Das obige ist der detaillierte Inhalt vonWie erhalte ich den Start der Woche (Sonntag oder Montag) in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn