ValidaDiaUtilBR 1.0.1

dotnet add package ValidaDiaUtilBR --version 1.0.1
                    
NuGet\Install-Package ValidaDiaUtilBR -Version 1.0.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ValidaDiaUtilBR" Version="1.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ValidaDiaUtilBR" Version="1.0.1" />
                    
Directory.Packages.props
<PackageReference Include="ValidaDiaUtilBR" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ValidaDiaUtilBR --version 1.0.1
                    
#r "nuget: ValidaDiaUtilBR, 1.0.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ValidaDiaUtilBR@1.0.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ValidaDiaUtilBR&version=1.0.1
                    
Install as a Cake Addin
#tool nuget:?package=ValidaDiaUtilBR&version=1.0.1
                    
Install as a Cake Tool

📅 ValidaDiaUtilBR

Nuget Nuget

Uma biblioteca .NET para validação de dias úteis no Brasil, considerando finais de semana e feriados nacionais (fixos e móveis). Ideal para aplicações que precisam lidar com regras de calendário, como sistemas financeiros, fiscais ou de agendamento.


✨ Funcionalidades

  • ✅ Verifica se uma data é um dia útil
  • 📆 Identifica finais de semana
  • 🎉 Reconhece feriados nacionais brasileiros (fixos e móveis)
  • ➕ Permite adicionar feriados personalizados
  • 🔁 Retorna o próximo ou anterior dia útil
  • 📝 Informa a descrição do feriado, se houver

🚀 Instalação

Você pode adicionar esta biblioteca ao seu projeto via NuGet:

Instale este pacote via nuget ou linha de comando:<br/>

Install-Package ValidaDiaUtilBR
dotnet add package ValidaDiaUtilBR

🛠️ Como Usar

Instanciando a classe

using ValidaDiaUtilBR;

// Para o ano atual
var validador = new ValidaDiaUtil();

// Para um ano específico
var validador2026 = new ValidaDiaUtil(2026);

Verificar se uma data é dia útil

bool ehUtil = validador.EhDiaUtil(new DateTime(2025, 12, 25)); // false (Natal)

Verificar se é final de semana

bool fimDeSemana = validador.EhFinalDeSemana(DateTime.Today);

Verificar se é feriado

bool feriado = validador.EhFeriado(new DateTime(2025, 11, 15)); // true

Obter descrição do feriado

string descricao = validador.DescricaoFeriado(new DateTime(2025, 11, 15)); // "Proclamação da República"

Adicionar feriado personalizado

validador.AdicionarFeriado(new DateTime(2025, 6, 13), "Aniversário da Cidade");

Encontrar o próximo dia útil

DateTime proximoUtil = validador.DiaUtilProximo(new DateTime(2025, 12, 25));

Encontrar o dia útil anterior

DateTime anteriorUtil = validador.DiaUtilAnterior(new DateTime(2025, 1, 1));

📌 Feriados Considerados

A biblioteca considera os seguintes feriados nacionais:
📅 Data 🎉 Feriado 📝 Observação
01/01 Ano Novo Feriado fixo
Variável Carnaval 47 dias antes da Páscoa
Variável Sexta-Feira Santa 2 dias antes da Páscoa
Variável Domingo de Páscoa Calculada via algoritmo Computus
Variável Corpus Christi 60 dias após a Páscoa
21/04 Tiradentes Feriado fixo
01/05 Dia do Trabalho Feriado fixo
07/09 Independência do Brasil Feriado fixo
12/10 Nossa Senhora Aparecida Feriado fixo
02/11 Finados Feriado fixo
15/11 Proclamação da República Feriado fixo
20/11 Consciência Negra Feriado fixo (nacional desde 2024)
25/12 Natal Feriado fixo
Você também pode adicionar feriados personalizados conforme a necessidade da sua aplicação.

📦 Contribuições

Contribuições são muito bem-vindas! Sinta-se à vontade para:

  • Reportar bugs
  • Sugerir melhorias
  • Criar pull requests com novas funcionalidades ou feriados regionais

📄 Licença

Este projeto está licenciado sob a MIT License.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.1 141 7/26/2025
1.0.0 135 7/9/2025

Setup