Maison >développement back-end >C++ >Comment puis-je déterminer le début de la semaine (dimanche ou lundi) en C# ?
C# propose plusieurs façons d'identifier le premier jour de la semaine, que ce soit dimanche ou lundi. Une tâche courante consiste à déterminer cela uniquement sur la base de la date et de l'heure actuelles.
Une solution flexible consiste à créer une méthode d'extension personnalisée qui vous permet de spécifier le jour de début souhaité. Cette méthode utilise l'arithmétique modulaire pour calculer la différence entre le jour en cours et le jour de début spécifié :
<code class="language-csharp">public static class DateTimeExtensions { public static DateTime WeekStart(this DateTime dt, DayOfWeek startOfWeek) { int offset = (7 + (dt.DayOfWeek - startOfWeek)) % 7; return dt.AddDays(-offset).Date; } }</code>
Cette méthode d'extension s'utilise comme ceci :
<code class="language-csharp">DateTime mondayStart = DateTime.Now.WeekStart(DayOfWeek.Monday);</code>
Cela renvoie la date du début de la semaine, commençant le lundi. Pour retrouver le début de semaine commençant dimanche :
<code class="language-csharp">DateTime sundayStart = DateTime.Now.WeekStart(DayOfWeek.Sunday);</code>
Cette approche offre un moyen simple et efficace de déterminer la date de début de la semaine, quel que soit le jour en cours. Ceci est particulièrement utile pour les tâches impliquant une planification ou des calculs hebdomadaires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!