cálculo com datas em asp.net
Alguém sabe como calcular o número de anos entre duas datas, similar ao que há no vcl, ie, YearsBetween, só que para aplicação asp.net do
Delphi ?
Delphi ?
N1
Curtidas 0
Respostas
Sanses
07/06/2005
Olá
A forma de fazer isso que vou postar aqui não é a mais correta. Acredito que tenha no .NET uma forma mais eficaz de se fazer isso. Mas como seu tópico já está ai a alguns dias, acho que vale a pena postar o pouco que sei:
Coloque 2 textbox no seu form e um button. Para o click do button digite:
Como disse não é a melhor maneira, pois retorna o numero de dias acompanhado das horas, :cry: .
Mas vamos continuar estudando, quem sabe chegamos a função correta :lol:
Sanses
A forma de fazer isso que vou postar aqui não é a mais correta. Acredito que tenha no .NET uma forma mais eficaz de se fazer isso. Mas como seu tópico já está ai a alguns dias, acho que vale a pena postar o pouco que sei:
Coloque 2 textbox no seu form e um button. Para o click do button digite:
var dias : string; begin dias := (DateTime.Parse(textbox1.text)-DateTime.Parse(textbox2.Text)).tostring; label7.Text := System.&String.Format(´Número de dias: ´, System.&Object(dias)); end;
Como disse não é a melhor maneira, pois retorna o numero de dias acompanhado das horas, :cry: .
Mas vamos continuar estudando, quem sabe chegamos a função correta :lol:
Sanses
GOSTEI 0
Sanses
07/06/2005
Olá, veja esta outra forma:
Esta, retorna em um inteiro o numero total de dias entre duas datas.
[]´s
Sanses
Esta, retorna em um inteiro o numero total de dias entre duas datas.
var data : timespan; begin data := DateTime.Parse(textbox1.text)-DateTime.Parse(textbox2.Text); label7.text := ´Número total de dias: ´+data.Days.tostring; end;
[]´s
Sanses
GOSTEI 0
N1
07/06/2005
Sanses,
Obrigado pela dica. Acabei achando outra forma:
em IMPLEMENTATION acrescentei:
uses Borland.Vcl.DateUtils;
acrescentei 2 textboxes , 1 button e 1 label:
No evento Onclick do button:
procedure TWebForm1.Button1_Click(sender: System.Object; e: System.EventArgs);
var
anos:Integer;
begin
anos:=YearsBetween(Convert.ToDateTime(TextBox1.Text),convert.ToDateTime(TextBox2.Text));
lblResultado.Text:=anos.ToString;
end;
Fica do ´jeito´ do Delphi 7
Obrigado
Obrigado pela dica. Acabei achando outra forma:
em IMPLEMENTATION acrescentei:
uses Borland.Vcl.DateUtils;
acrescentei 2 textboxes , 1 button e 1 label:
No evento Onclick do button:
procedure TWebForm1.Button1_Click(sender: System.Object; e: System.EventArgs);
var
anos:Integer;
begin
anos:=YearsBetween(Convert.ToDateTime(TextBox1.Text),convert.ToDateTime(TextBox2.Text));
lblResultado.Text:=anos.ToString;
end;
Fica do ´jeito´ do Delphi 7
Obrigado
GOSTEI 0
Sanses
07/06/2005
Olá
Legal, mas dá na mesma, pois esta função retorna somente os anos, e no se caso a diferença de data for de 11 meses ele retorna 0. Do modo que eu coloquei, ele retorna o número total de dias e ai fical fácil, estrair os anos e meses. Mas é isso ai...
Sanses
Legal, mas dá na mesma, pois esta função retorna somente os anos, e no se caso a diferença de data for de 11 meses ele retorna 0. Do modo que eu coloquei, ele retorna o número total de dias e ai fical fácil, estrair os anos e meses. Mas é isso ai...
Sanses
GOSTEI 0
Sanses
07/06/2005
ah, já ia me esquecendo, usando componentes do .net, vc ganha em tamanho dos assemblys gerados. Ao incluir esta unit no no uses, meu assembly saltou de 117k para 495k.
Sanses
Sanses
GOSTEI 0