CShared #1 – [C#] Contagem de dias úteis entre duas datas. | Dicas C# | Forum | C# Brasil


CShared #1 – [C#] Contagem de dias úteis entre duas datas. | Dicas C# | Forum

Login form protected by Login LockDown.


 
Você precisa fazer login para escrever mensagens Login Registrar


Registrar? | Recuperar Senha?

Pesquisar Fóruns:


 






Minimum search word length is 4 characters – Maximum search word length is 84 characters
Uso do Curinga nas Pesquisa:
*  igual a qualquer número de caracteres    %  igual a exatamente um caractere

CShared #1 – [C#] Contagem de dias úteis entre duas datas.
Leia a postagem original

UsuárioMensagem

17:08
18 agosto 2010


Thiago Suzuki

Admin

editoriais 4

Dando inicio a série de postagens com dicas úteis, códigos simples e funcionais que durante o dia-a-dia do desenvolvedor podem ser necessárias.
Hoje vou deixar uma função que pode ajudar bastante, ela conta quantos dias úteis existem entre duas datas, melhor dizendo em um período e a principio sem considerar feriados. Claro que apesar de não ter feriados é possível que você estenda esta ideia e incluir na lógica para não contar feriados também, por exemplo, ter um cadastro com os feriados e dias não trabalhados e ir consultando por uma lista com LINQ (find).
Segue o método:

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

Por hoje é isso, simples assim. “Quem complica se estrumbica”.
Aproveitando, caso você queria algum tópico escreva e deixe a sua sugestão.
Siga-me no twitter: ** Você não tem permissão para visualizar este link **

“A mente que se abre a uma nova idéia jamais voltará a seu tamanho original.” – Albert Einstein


Leia a postagem original



About the C# Brasil Forum

O fuso horário do Fórum:UTC -3

Maior Número de Usuários Online: 31

Online Agora:
4 Visitantes

Atualmente navegando Tópico:
1 Visitante

Estatísticas do Fórum:

Grupos: 1
Fóruns: 16
Tópicos: 141
Editorias: 255

Grupo de Usuários:

Existem 1328 Membros

Existem 3 Admins

Participantes mais ativos:

Mauricio Naozuka – 6
Lucas Bessa – 6
mrc.pereira – 5
gkalil – 5
Joker – 4
rmartins – 4

Novos Membros Recentes: ldomingues, sar@91Alan, rafaelrrm, tadeu911, coyoteok, Jr.

Administradores: Raphael Cardoso (66 Mensagens), Rodrigo Coimbra (5 Mensagens), Thiago Suzuki (4 Mensagens)