Caro(a) Leitor(a), hoje vou dar mais uma dica no desenvolvimento de software usando a linguagem C#, ferramenta Visual Studio 11 e framework 4.0. Lembro que o código aqui pode ser feito da versão 2.0 pra cima do framework.
Hoje o meu problema é saber quantos dias tem o mês dentro do código. O outro problema é saber se esse dia que peguei é final de semana ou não, ou seja, é sábado ou domingo.
Tudo isso o framework .NET pode fazer pra você, basta usar as classes corretas.
Tag: C#, Visual Studio 11, Dias do mês, Final de semana.
Dias do mês
Para pegar os dias do mês, usei uma classe de globalização dentro do system. Esse calendário é o gregoriano. Listagem 1.
[CODE]
System.Globalization.Calendar c = new GregorianCalendar();
[/CODE]
Listagem 1: Usando a classe de globalização.
Depois de iniciar o calendário armazenando a instância dentro da variável c, basta usar os métodos existentes. Existem vários métodos úteis, mas para resolver o meu problema usei o que pega os dias do mês. Listagem 2.
[CODE]
int dias = c.GetDaysInMonth(02, 2012);
[/CODE]
Listagem 2: Retorna a quantidade de dias daquele mês / ano passados
Na listagem 2, foi necessário passar o mês e ano para saber quantos dias tem aquele mês.
Final de semana
Para verificar se o dia é sábado ou domingo, foi feito um método que recebe parâmetros e retorna true ou false. É necessário passar a data completa e não apenas o mês e o ano como no exemplo anterior. Listagem 3.
[CODE]
protected Boolean isfinalDeSemana(DateTime _data)
{
Boolean _retorno = false;
if (_data.DayOfWeek == DayOfWeek.Saturday)
_retorno = true;
else if (_data.DayOfWeek == DayOfWeek.Sunday)
_retorno = true;
return _retorno;
}
[/CODE]
Listagem 3: Verifica se é final de semana.
Veja que o método recebe um tipo DateTime e retorna o tipo Boolean (true ou false). Dentro do método existe a verificação da data informada com a propriedade DayOfWeek. Não existe mágica basta verificar se o dia da semana é sábado ou domingo.
O código if (_data.DayOfWeek == DayOfWeek.Saturday) é o que faz todo o trabalho para nós. O próximo passo basta verificar no método principal passando a data. Listagem 4.
[CODE]
if (!isfinalDeSemana("02/12/2012"))
{
Response.Write("É dia da semana ");
}
[/CODE]
Listagem 4: Chamando o método
A listagem 4 chama o método e verifica se é final de semana, se não for final de semana ele entra no método. Note que existe o sinal de exclamação antes da chamada, isso quer dizer que é uma negação. Leia-se assim: se não for final de semana.
Bom, espero que tenha gostado e qualquer dúvida pode entrar em contato pelo site pessoal www.mauriciojunior.org.