public static DateTime diaUtil(DateTime dt)
{
while (true)
{
if (dt.DayOfWeek == DayOfWeek.Saturday)
{
dt = dt.AddDays(2);
return diaUtil(dt);
}
else if (dt.DayOfWeek == DayOfWeek.Sunday)
{
dt = dt.AddDays(1);
return diaUtil(dt);
}
else if (Feriado(dt) == true)
{
dt = dt.AddDays(1);
return diaUtil(dt);
}
else return dt;
}
}
public static bool Feriado(DateTime dt)
{
String strConn;
strConn = "Data Source=localhost;Initial Catalog=Banco;";
strConn += "User ID=Usuario;Password=Senha;Max Pool Size=150; Connection Lifetime=0";
string sqlFeriado = "";
sqlFeriado += "SELECT dtferiado FROM feriado ";
sqlFeriado += "WHERE dtferiado = '";
sqlFeriado += dt.ToString("dd/MM/yyyy") + "'";
SqlConnection objConnFeriado;
SqlCommand cmdFeriado = new SqlCommand();
objConnFeriado = new SqlConnection(strConn);
objConnFeriado.Open();
cmdFeriado.Connection = objConnFeriado;
cmdFeriado.CommandText = sqlFeriado;
SqlDataReader objDRFeriado = cmdFeriado.ExecuteReader();
if (objDRFeriado.Read())
return true;
else
return false;
objDRFeriado.Close();
objConnFeriado.Close();
}