Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Probleme mit Datetime
King-Malkav
myCSharp.de - Member

Avatar #avatar-2613.jpg


Dabei seit:
Beiträge: 264
Herkunft: Landau

Themenstarter:

Probleme mit Datetime

beantworten | zitieren | melden

Hi leuter, ich habe ein Problem. Und zwar möchte ich in einem Bestimmten Zeitraum Daten erfassen.

Jedesmal wenn der Button geklickt wird soll in meiner Tabelle der Counter eins hochgesetzt werden. Das ist ja auch kein Problem. Jetzt kommts aber, zwischen 20.00 und 22.00 Uhr soll beim klicken auf den selben Button ein Insert in einer anderen Tabelle gemacht werden.

Die SQL Inserts sind kein Problem, mein Problem ist das ich die if anweisung mit Datetime nicht gebacken bekomme.

Wenn mir jemad helfen würde währe ich sehr Dankbar.

MFG
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo King-Malkav,

wurde quasi gerade und beantwortet. Siehe Aktuelle Uhrzeit abrufen. und folgende.

herbivoire
private Nachricht | Beiträge des Benutzers
King-Malkav
myCSharp.de - Member

Avatar #avatar-2613.jpg


Dabei seit:
Beiträge: 264
Herkunft: Landau

Themenstarter:

beantworten | zitieren | melden

Danke ich werds mal testen, wenn dann 00.01 am nächsten Tag ist, zählt er dann wieder die Uhrzeit als kleiner 20.00 Uhr? Müsste er ja machen?!

MFG
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo King-Malkav,

wenn du nur die Uhrzeit unabhängig von dem Tag vergleichen willst, solltest du nicht die Datetimes selbst sondern DateTime.TimeOfDay vergleichen.

herbivore
private Nachricht | Beiträge des Benutzers
King-Malkav
myCSharp.de - Member

Avatar #avatar-2613.jpg


Dabei seit:
Beiträge: 264
Herkunft: Landau

Themenstarter:

beantworten | zitieren | melden

Mhhh irgendwie hab ich ein Brett vorm Kopf, ich bekomme es nämlich nicht gebacken.

 
private void mynach()
		{
			DateTime dt = new DateTime();
			dt = DateTime.Now;
			string time = "20:00:00";
			dt = DateTime.Parse(time);
			
			if (DateTime.Now ≥ dt)
			{
				l_1800.Text = "X Aufträge nach 8";
			}
		
		}

Das Pasre funktioniert nicht und dt hat als Value nur das aktuelle Datum.
DateTime.TimeOfDay gehts gar nicht.

Was mach ich falsch...?

MFG
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo King-Malkav,

was geht das nicht. Bitte Code und genaue Fehlermeldung?

herbivore
private Nachricht | Beiträge des Benutzers
King-Malkav
myCSharp.de - Member

Avatar #avatar-2613.jpg


Dabei seit:
Beiträge: 264
Herkunft: Landau

Themenstarter:

beantworten | zitieren | melden

Hi herbivore,

Code habe ich ja oben schon gepostet.

dt hat den Value = "08/28/06" somit klappt mein vergleich nicht.

Wenn ich den Code umschreibe

 
private void mynach()
		{
			DateTime dt = new DateTime();
			dt = DateTime.Now.TimeOfDay;
			string time = "20:00:00";
			dt = DateTime.Parse(time);
			
			if (DateTime.Now ≥ dt)
			{
				l_1800.Text = "X Aufträge nach 8";
			}
		
		}

bekomm ich folgende Fehlermeldung:
Implizite Konvertierung des Typs 'System.TimeSpan' zu 'System.DateTime' nicht möglich.

MFG
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo King-Malkav,

DateTime.TimeOfDay ist eine TimeSpan. Verwende eine entsprechende Variable.

herbivore
private Nachricht | Beiträge des Benutzers
King-Malkav
myCSharp.de - Member

Avatar #avatar-2613.jpg


Dabei seit:
Beiträge: 264
Herkunft: Landau

Themenstarter:

beantworten | zitieren | melden

Hi herbivore,

danke fürs Knoten lösen.

 
private void mynach()
		{
			string now = DateTime.Now.ToLongTimeString();
			string time = "20:00:00";
			
			TimeSpan dt = new TimeSpan();
			dt = TimeSpan.Parse(time);
			TimeSpan dt2 = new TimeSpan();
			dt2 = TimeSpan.Parse(now);

			if (dt2 ≥ dt)
			{
				l_1800.Text = "X Aufträge nach 8";
			}
		
		}

So funktioniert es. Danke. Jetzt muss ich nur noch die Insert Into Kommandos schreiben, aber das ist kein Problem. MFG

MFG
private Nachricht | Beiträge des Benutzers