Eu tenho um código:
int MonthNow = System.DateTime.Now.Month;
int YearNow = System.DateTime.Now.Year;
int DayNow = System.DateTime.Now.Day;
Como posso obter o dia, o mês e o ano de ontem e amanhã em C #?
Claro, posso apenas escrever:
DayTommorow = DayNow +1;
mas pode acontecer que amanhã seja outro mês ou ano. Existem ferramentas integradas em C # para descobrir ontem e hoje?
DayNow + 1
ou- 1
é se for o primeiro ou último dia do mês, isso não funcionará. DateTime.Now.Day é apenas uma representação inteira do dia atual.Respostas:
Você pode encontrar essas informações diretamente na referência da API .
fonte
fonte
Hoje :
DateTime.Today
Amanhã:
Ontem :
fonte
Você deve fazer desta forma, se quiser obter ontem e amanhã às 00:00:00:
Apenas tenha em mente que, se você fizer desta forma:
então você obterá a hora atual menos um dia, e não ontem às 00:00:00.
fonte
Você quer
DateTime.Today.AddDays(1)
.fonte
Use
DateTime.AddDays()
( método DateTime.AddDays da documentação do MSDN ).fonte
O truque é usar "DateTime" para manipular datas; use apenas números inteiros e strings quando precisar de um "resultado final" da data.
Por exemplo (pseudo código):
Obtenha "DateTime tomorrow = Now + 1"
Determine a data, dia da semana, dia do mês - o que você quiser - da data resultante.
fonte
Para obter "local" ontem no UTC.
fonte
Cuidado ao adicionar um fuso horário indesejado aos resultados, especialmente se a data for enviada por meio de uma API da web. Use UtcNow em vez disso, para torná-lo sem fuso horário.
fonte