Mam kod:
int MonthNow = System.DateTime.Now.Month;
int YearNow = System.DateTime.Now.Year;
int DayNow = System.DateTime.Now.Day;
Jak uzyskać wczorajszy i jutrzejszy dzień, miesiąc i rok w C #?
Oczywiście mogę po prostu napisać:
DayTommorow = DayNow +1;
ale może się zdarzyć, że jutro będzie inny miesiąc lub rok. Czy istnieją wbudowane narzędzia C #, które pozwalają sprawdzić wczoraj i dziś?
DayNow + 1
lub- 1
jest, jeśli jest to pierwsza od ostatniego dnia miesiąca, to przyzwyczajenie praca. DateTime.Now.Day to po prostu liczba całkowita reprezentująca bieżący dzień.Odpowiedzi:
Możesz znaleźć te informacje bezpośrednio w dokumentacji API .
źródło
źródło
Dzisiaj :
DateTime.Today
Jutro:
Wczoraj :
źródło
Powinieneś to zrobić w ten sposób, jeśli chcesz otrzymać wczoraj i jutro o godzinie 00:00:00:
Pamiętaj tylko, że jeśli robisz to w ten sposób:
wtedy otrzymasz aktualny czas minus jeden dzień, a nie wczoraj o godzinie 00:00:00.
źródło
Chcesz
DateTime.Today.AddDays(1)
.źródło
Użyj
DateTime.AddDays()
( Metoda MSDN Documentation DateTime.AddDays ).źródło
Sztuczka polega na użyciu „DateTime” do manipulowania datami; używaj liczb całkowitych i ciągów tylko wtedy, gdy potrzebujesz „końcowego wyniku” od daty.
Na przykład (pseudo kod):
Uzyskaj „DateTime tomorrow = Now + 1”
Określ datę, dzień tygodnia, dzień miesiąca - cokolwiek chcesz - wynikowej daty.
źródło
Aby uzyskać „lokalny” wczoraj w UTC.
źródło
Uważaj na dodanie niechcianej strefy czasowej do wyników, zwłaszcza jeśli data ma zostać wysłana za pośrednictwem internetowego interfejsu API. Zamiast tego użyj UtcNow, aby ograniczyć strefę czasową.
źródło