Autor Beitrag
dark-destination1988
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 178
Erhaltene Danke: 21



BeitragVerfasst: Fr 10.06.11 09:16 
Hallo Gemeinde.
benötige mal eure Hilfe. Und zwar bin ich am entwickeln einer Silverlight-Applikation. Für diese benötige ich die Arbeitstage eines Monats. Gibt es da eventuell schon vorgefertigte Funktionen? Feiertage will ich zunächst einmal herauslassen.
meine idee wäre ja den Monat durchzugehen und abzufragen ob der Tag der woche Mo-Fr ist--> dementsprechend einen Counter erhöhen.
Aber das erscheint mir etwas von hinten durch die Brust geschossen.
traceurmicha
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 160
Erhaltene Danke: 9

Win XP SP2, Win 7 Pro., Ubuntu 9, Debian 5
C#, ASP.NET, MSSQL, PHP(Microsoft Visual Studio 2010 Ultimate, SharpDevelop 4, Microsoft SQL Server2008 Express, Eclipse for PHP)
BeitragVerfasst: Fr 10.06.11 11:42 
Hey dark-destination1988,
Wenn ich dich richtig verstanden habe weiß ich wie du das lösen kannst.

Mit der Datetime Funktion kannst du prüfen wie viele Tage ein Monat hat und auch überprüfen was das für ein tag ist.

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
        DateTime dt = new DateTime();
            //Anzahl der Tage feststellen
            int i = DateTime.DaysInMonth(jahr,monat);

            for (int counter = 1; counter <= i; counter++)
            {
                dt = new DateTime(jahr, monat, counter);
                //Wenn der Tag kein Samstag oder Sontag ist zähle!
                if (dt.ToString("ddd") != "Sa" && dt.ToString("ddd") != "So")
                {
                    zaehler++;
                }
            }


Ich hoffe ich konnte dir helfen

_________________
Programmieren ist ein Rennen zwischen den Softwareentwicklern, die versuchen größere und bessere idiotensichere Programme zu schreiben und dem Universum, welches versucht größere und bessere Idioten zu produzieren. Zur Zeit liegt das Universum in Führung.


Zuletzt bearbeitet von traceurmicha am Fr 10.06.11 12:12, insgesamt 1-mal bearbeitet
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Fr 10.06.11 11:44 
Da fehlen aber die Feiertage.
EDIT:
Sehe grade das er gesagt hat diese können rausgelassen werden. Mein Fail!

Für diesen Beitrag haben gedankt: dark-destination1988
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4796
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Fr 10.06.11 12:10 
Hallo traceurmicha,

anstatt der ToString()-Abfrage, solltest du besser direkt die DayOfWeek-Eigenschaft benutzen:
ausblenden C#-Quelltext
1:
if (dt.DayOfWeek != DayOfWeek.Saturday && dt.DayOfWeek != DayOfWeek.Sunday)					

(und natürlich den richtigen Operator ;-))

Für diesen Beitrag haben gedankt: dark-destination1988
traceurmicha
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 160
Erhaltene Danke: 9

Win XP SP2, Win 7 Pro., Ubuntu 9, Debian 5
C#, ASP.NET, MSSQL, PHP(Microsoft Visual Studio 2010 Ultimate, SharpDevelop 4, Microsoft SQL Server2008 Express, Eclipse for PHP)
BeitragVerfasst: Fr 10.06.11 12:13 
Hey Th69,

Der Fehler von mir wurde korrigiert, da waren die Finger schneller als das Hirn^^
Das mit DayOfWeek kannte ich auch noch nicht, werd meine Funktion gleich mal umbauen^^

_________________
Programmieren ist ein Rennen zwischen den Softwareentwicklern, die versuchen größere und bessere idiotensichere Programme zu schreiben und dem Universum, welches versucht größere und bessere Idioten zu produzieren. Zur Zeit liegt das Universum in Führung.

Für diesen Beitrag haben gedankt: dark-destination1988
dark-destination1988 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 178
Erhaltene Danke: 21



BeitragVerfasst: Fr 10.06.11 14:41 
nagut, dachte zwar das es da was simpleres gibt, aber das ist besser als nicht,
danke an euch
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Fr 10.06.11 14:55 
msdn.microsoft.com/d...arday.isweekend.aspx

Obwohl es dir in dem Zusammenhang nicht so viel bringen wird. ^^ Aber kannst dir ja die Datum Klasse ableiten und erweitern um die Funktion .isWeekend.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19312
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 10.06.11 15:18 
Google hat das alles schon fertig:
bloggingabout.net/bl...2004/11/30/1658.aspx
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 763
Erhaltene Danke: 27

Win XP, Windows 7, (Linux)
D6, D2010, C#, PHP, Java(Android), HTML/Js
BeitragVerfasst: Fr 10.06.11 15:26 
Und wo bleibt dann learning by failing?
pdelvo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 55
Erhaltene Danke: 11



BeitragVerfasst: Mo 08.08.11 01:42 
Das sieht mir alles ein bisschen hässlich aus. hier mal meine linq Variante(hab ich mal schnell hingeklatscht^^)



ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
        public static int GetWorkingDays(int year, int month)
        {
            int start = (int)new DateTime(year, month, 1).DayOfWeek;
            return (from int i in Enumerable.Range(1, DateTime.DaysInMonth(year, month))
                    where (start + i) % 7 != 0 && (start + i) % 7 != 6
                    select i).Count();
        }