Ler em inglês

Compartilhar via


DateTimeOffset.AddDays(Double) Método

Definição

Retorna um novo objeto DateTimeOffset que adiciona um número especificado de dias inteiros e fracionários ao valor dessa instância.

C#
public DateTimeOffset AddDays(double days);

Parâmetros

days
Double

Um número de dias inteiros e fracionários. O número pode ser positivo ou negativo.

Retornos

Um objeto cujo valor é a soma da data e hora representada pelo objeto DateTimeOffset atual e o número de dias representado por days.

Exceções

O valor resultante DateTimeOffset é menor que DateTimeOffset.MinValue.

-ou-

O valor resultante DateTimeOffset é maior que DateTimeOffset.MaxValue.

Exemplos

O exemplo a seguir usa o AddDays método para listar as datas que caem na segunda-feira, o início da semana de trabalho, em março de 2008.

C#
DateTimeOffset workDay = new DateTimeOffset(2008, 3, 1, 9, 0, 0,
                   DateTimeOffset.Now.Offset);
int month = workDay.Month;
// Start with the first Monday of the month
if (workDay.DayOfWeek != DayOfWeek.Monday)
{
   if (workDay.DayOfWeek == DayOfWeek.Sunday)
      workDay = workDay.AddDays(1);
   else
      workDay = workDay.AddDays(8 - (int)workDay.DayOfWeek);
}
Console.WriteLine("Beginning of Work Week In {0:MMMM} {0:yyyy}:", workDay);
// Add one week to the current date
do
{
   Console.WriteLine("   {0:dddd}, {0:MMMM}{0: d}", workDay);
   workDay = workDay.AddDays(7);
} while (workDay.Month == month);
// The example produces the following output:
//    Beginning of Work Week In March 2008:
//       Monday, March 3
//       Monday, March 10
//       Monday, March 17
//       Monday, March 24
//       Monday, March 31

Comentários

A parte fracionária do days parâmetro é a parte fracionária de um dia. Por exemplo, 4,5 é equivalente a 4 dias, 12 horas, 0 minutos, 0 segundos, 0 milissegundos.

No .NET 6 e em versões anteriores, o days parâmetro é arredondado para o milissegundo mais próximo. No .NET 7 e versões posteriores, a precisão completa Double do days parâmetro é usada. No entanto, devido à imprecisão inerente da matemática de ponto flutuante, a precisão resultante variará.

Observação

Este método retorna um novo objeto DateTimeOffset. Ele não modifica o valor do objeto atual adicionando days à sua data e hora.

Como um DateTimeOffset objeto não representa a data e a hora em um fuso horário específico, o AddDays método não considera as regras de ajuste de um fuso horário específico quando executa a aritmética de data e hora.

A conversão de intervalos de tempo de menos de um dia em uma fração pode envolver uma perda de precisão. Se isso for problemático, você poderá usar o Add método , que permite especificar mais de um tipo de intervalo de tempo em uma única chamada de método e eliminará a necessidade de converter intervalos de tempo em partes fracionárias de um dia.

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0