Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

diogom

contar dias entre datas

Mensagens Recomendadas

diogom

Olá,

Alguem sabe como posso acrescentar o dia neste if manualmente. Tentei varias maneiras e não consegui nenhuma. :confused:

if (initialDate.DayOfWeek != DayOfWeek.Sunday &&
			 initialDate.DayOfWeek != DayOfWeek.Saturday )
			 daysCount++;

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Convidado

Explica-te lá melhor...

Se quiseres calcular os dias entre duas datas aqui vai:

private int getNumerodeDias(DateTime firstDate, DateTime secondDate)
{
return secondDate.Subtract(firstDate).Days;
}

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
diogom

quero acrescentar os dias dos feriados no if. Assim como está, conta todos os dias diferentes de sabado e domingo. Eu quero que conte todos os dias diferentes de sabado, domingo e feriados.

public int GetDiffDays(DateTime initialDate, DateTime finalDate, int nrReg)
 {
	 int days = 0;
	 int daysCount = 0;
	 days = initialDate.Subtract(finalDate).Days;
	 //Módulo
	 if (days < 0)
		 days = days * -1;
	 for (int i = 1; i <= days; i++)
	 {
		 initialDate = initialDate.AddDays(1);
		 //Conta apenas dias da semana.
		 if (initialDate.DayOfWeek != DayOfWeek.Sunday &&
			 initialDate.DayOfWeek != DayOfWeek.Saturday )
			 daysCount++;
		 //lblResult.Text = Convert.ToString(nrReg / daysCount);
	 }
	 return daysCount;
 }

Editado por apocsantos

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
nelsonr

Boas diogom,

não percebi bem o que pretendes nesse ultimo post, mas não será melhor usares algo do tipo:

DateTime day1=new DateTime(anoAtual, 5, 3);

Converter texto para data assim dessa forma, podes vir a ter problemas se a cultura tiver uma data com um formato diferente.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
rumbafum

Também não percebi o pretendido, mas se não queres contar com feriados tens que fazer um método teu que para uma data indique se é feriado ou não e usar esse método no if.

Podes fazer um extension method para a class DateTime com isso.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
DiogoFialho

Crias tu um método que verifica se o dia que estás a verificar é considerado feriado ou fim-de-semana ou não. Mas tens de ter cuidado com a cultura que usas, não só pela situação de utilizares string mas também pela situação de existirem dias feriados num dado país que não existem noutro.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.