Pergunta

Controlador:

        DateTime startDate = DateTime.Now;

        ViewData["now"] = startDate.ToString();
        ViewData["interval"] = interval.ToString();

        startDate.AddMonths(interval);

        ViewData["later"] = startDate.ToString();

Ver:

Now: <%=ViewData["now"] %><br />

Later: <%=ViewData["later"] %><br />

Interval: <%=ViewData["interval"] %>

Este rendimentos:

Now: 10/2/2009 12:17:14 PM
Later: 10/2/2009 12:17:14 PM
Interval: 6
Foi útil?

Solução

startDate  = startDate.AddMonths(interval);

Outras dicas

A partir da documentação:

Este método não altera o valor deste objeto DateTime. Em vez disso, um novo objeto DateTime é retornado cujo valor é o resultado desta operação.

Você realmente quer:

ViewData [ "depois"] = startDate.AddMonths (intervalo) .ToString ();

ou algo parecido.

AddMonths retorna uma nova DateTime com o valor.

startDate = startDate.AddMonths(interval)

é necessário atribuir o resultado da AddMonths a uma variável. AddMonths não altera o valor do objeto que foi chamado, mas retorna um novo DateTime com o valor que resulta da operação deixando o valor DateTime original inalterada.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top