Bonjour,
Comment obtenir le premier jour de chaque semaine d'un mois donné .(asp.net)
Merci d'avance.
Bonjour,
Comment obtenir le premier jour de chaque semaine d'un mois donné .(asp.net)
Merci d'avance.
Bnj,
J'ai vu un blog qui parle de ça :
http://joelabrahamsson.com/entry/get...k-with-c-sharp.
Désolé je l'ai pas vu de prés.
Bonne courage.
Regarde les commentaires aussi![]()
Le premier jour de chaque semaine tombe un lundi![]()
Retrouvez moi sur :
Mon Espace Developpez.com-------------------------------
Dvp.NET, une librairie open-source de composants .NET
Mon blog: Up there in the code----------------------------
Twitter: NatMarchand
Ma société: So@t
Showrizo : Suivez votre planning de séries télé sous Windows 8
En es-tu si sûr ?
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 void Main() { PrintFirstDayOfWeek("fr-FR"); PrintFirstDayOfWeek("en-US"); PrintFirstDayOfWeek("ar-SA"); } void PrintFirstDayOfWeek(string cultureName) { CultureInfo culture = CultureInfo.GetCultureInfo(cultureName); Console.WriteLine("{0}: {1}", culture.DisplayName, culture.DateTimeFormat.FirstDayOfWeek); }
Ce code affiche le résultat suivant :
Eh oui, le premier jour de la semaine n'est pas le même selon les pays...French (France): Monday
English (United States): Sunday
Arabic (Saudi Arabia): Saturday
Question intéressante, en tous cas
J'ai un peu cherché et je suis arrivé à ce code pour trouver les premiers jours de la semaine d'un mois donné :
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 public IEnumerable<DateTime> FirstDayOfEachWeek(int year, int month) { return FirstDayOfEachWeek(year, month, CultureInfo.CurrentCulture.DateTimeFormat.FirstDayOfWeek); } public IEnumerable<DateTime> FirstDayOfEachWeek(int year, int month, DayOfWeek firstDayOfWeek) { // On se place sur le premier jour du mois DateTime day = new DateTime(year, month, 1); // Si ce n'est pas le premier jour de la semaine, // on cherche le début de la prochaine semaine if (day.DayOfWeek != firstDayOfWeek) { int diff = (firstDayOfWeek - day.DayOfWeek + 7) % 7; day = day.AddDays(diff); } // On avance de semaine en semaine tant qu'on n'a pas changé de mois while (day.Month == month) { yield return day; day = day.AddDays(7); } }
La première méthode utilise le premier jour de la semaine de la culture courante, la seconde permet de le spécifier explicitement
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
C'était évidemment une petite boutade!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 DateTime FirstDayOfMonth(int year, int month, DayOfWeek day) { return Enumerable.Range(1,7).Select(i=>new DateTime(year,month,i)).First(d=>d.DayOfWeek ==day); } IEnumerable<DateTime> DaysOfMonth(int year, int month, DayOfWeek day) { var firstDay = FirstDayOfMonth(year,month,day); return Enumerable.Range(0,5).Select(i=>firstDay.AddDays(7*i)).TakeWhile(d=>d.Month==month && d.Year==year); }
Retrouvez moi sur :
Mon Espace Developpez.com-------------------------------
Dvp.NET, une librairie open-source de composants .NET
Mon blog: Up there in the code----------------------------
Twitter: NatMarchand
Ma société: So@t
Showrizo : Suivez votre planning de séries télé sous Windows 8
Jolie la solution Linq
Mais je pense que la mienne est (un peu) plus rapide![]()
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Retrouvez moi sur :
Mon Espace Developpez.com-------------------------------
Dvp.NET, une librairie open-source de composants .NET
Mon blog: Up there in the code----------------------------
Twitter: NatMarchand
Ma société: So@t
Showrizo : Suivez votre planning de séries télé sous Windows 8
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Partager