mit DateTime Anzahl der Tage in einem Monat rausfinden ...

Duffman666

Grünschnabel
Hallo miteinander,

ich hoffe ich bin hier richtig - ich such mir schon den Wolf - gibt es mit ASP.NET eine Möglichkeit die Anzahl der Tage in einem Monat zu ermitteln ? PHP ist da ja so freundlich und rechnet auch ungültige Werte automatisch in ein korrektes Datum um , bei DateTime bekomme ich nur ne Meldung das die Zahlen ausserhalb der Reichweite liegen.

ich will per Loop jeweils das Datum des letzten Mittwochs generieren, das funktioniert zwar mit dem Code wie unten so einigermassen, aber am Anfang eines Monats bzw wenn noch ein Jahreswechsel dazu kommt, klappts natürlich nicht mehr, kann mir da jemand helfen ?

PHP:
<%
DateTime datum = DateTime.Now;
CultureInfo ciCurrent = new CultureInfo("de-DE");
Thread.CurrentThread.CurrentCulture = ciCurrent;
string aktDatum = DateTime.Now.ToShortDateString();
string wochentag = DateTime.Now.DayOfWeek.ToString();
int Jahr 	= Convert.ToInt16(DateTime.Now.Year.ToString());
int Monat 	= Convert.ToInt16(DateTime.Now.Month.ToString());
int Tag 	= Convert.ToInt16(DateTime.Now.Day.ToString());
string altDatum;

if (wochentag != "Wednesday") { 
	
	for (int DayLoop=Tag; DayLoop > 0; DayLoop--) {
	
	DateTime myDate = new DateTime(Jahr, Monat, DayLoop);	
	
	string pruefTag = myDate.DayOfWeek.ToString();

		if (pruefTag == "Wednesday") {
		altDatum = myDate.ToShortDateString();
		Response.Write("&nbsp;&nbsp;&nbsp;Letzter Mittwoch "+altDatum);
		break;
	
		} // END if Mittwoch zurueck gefunden
	
	} // END DayLoop

} // END if aktueller WochenTag kein Mittwoch
else
{
Response.Write("Heute ist Mittwoch der "+aktDatum);
}

%>



Gruss, Duffman
 
Hi,

Also eine Lösung für dein eigentliches Problem kann ich dir nicht direkt nennen, aber:
Du bist in den paar zeilen Code nur mit Casten und Convertieren beschäftigt. Schau dir die Datentypen der einzelnen Properties mal an, die haben schon alle den gewünschten ;)
Du konvertierst einen int in einen String und den dann wieder in einen int?! Mehr als unschön.

Bei der ganzen Sache brauchst du nicht einen Convert.ToString (abgesehen von der Ausgabe).

ach doch, ich hätte noch eine Lösung zu deinem eigentlichen Problem:
Du weißt welcher Tag aktuell ist. Demnach weißt du auch, wie lange der letzte Mittwoch zurück liegt. Die Methode Substract könnte dir dann weiterhelfen.
 
Hi,

erstmal vielen Dank f. deine schnelle Antwort. Ich will ja mit meinem Code auch keinen Schönheitswettbewerb gewinnen :) Scherz, bin halt blutiger Anfänger in ASP.NET.

Werde Substract mal googlen , vielleicht hilfts mir ja weiter.

Danke, duffman :)
 
Hi!

Ich hätte da noch einen Thread (mit einem Hinweis für dich :D) parat.
[thread=252441]Datum auslesen/berechnen in C# - Thread[/thread]

//Edit: Ach noch was, teste das lieber vorweg lokal in einem kleinem Testprog. ;)
 
//Edit: Ach noch was, teste das lieber vorweg lokal in einem kleinem Testprog. ;)
Kann ich mich nur anschließen.
Dein Thema hat eigentlich nix mit ASP.NET zu tun. Demnach würde es vollkommen ausreichen, dass du den Code vorher erstmal in einer kleinen Konsolenanwendung testest. Das macht das debuggen, und bauen viel schneller und einfacher.

Googlen brauchst du nicht extra. Die Beschreibung aller Klassen, Methoden, .. des .NET - Framework findest du in der MSDN inkl Beispiele.
 
Kann ich mich nur anschließen.
Demnach würde es vollkommen ausreichen, dass du den Code vorher erstmal in einer kleinen Konsolenanwendung testest. Das macht das debuggen, und bauen viel schneller und einfacher.

Kannst mir sagen was ich dafür installieren muss, damit meine Dosbox den C# Code parsen kann, bzw als was ich das speichern muss ? Ich arbeite mit DreamWeaver und das Prog soll später auch mal auf ner Website laufen.

Googlen brauchst du nicht extra. Die Beschreibung aller Klassen, Methoden, .. des .NET - Framework findest du in der MSDN inkl Beispiele.

Danke für die URL , aber ich find die MSDN Erklärungen nicht sehr auskunftsfreudig und auch ziemlich kryptisch :-(

Gruss, Duffman
 
Kannst mir sagen was ich dafür installieren muss, damit meine Dosbox den C# Code parsen kann, bzw als was ich das speichern muss ? Ich arbeite mit DreamWeaver und das Prog soll später auch mal auf ner Website laufen.
niggo meinte damit eine Konsolen-Applikation. Um sowas zu erstellen, brauchst das MS Visual Studio oder Du verwendest eine der frei verfügbaren IDE wie Eclipse oder SharpDevelop.

Danke für die URL , aber ich find die MSDN Erklärungen nicht sehr auskunftsfreudig und auch ziemlich kryptisch :-(
Wtf? Im Gegensatz zur Java-Dokumentation ein Gedicht. Wenn Du keine Lust auf die MSDN hast, frag ich mich wo Du dein Wissen zum .NET Framework herbekommen willst. Die MSDN ist ein Nachschlagewerk zu den Frameworkelementen ansich. Daher schaut sie auch auf den ersten Blick kryptisch aus. Aber sie ist der ständige Begleiter eines jeden .NET-Entwicklers.
 
Zurück