//计算可工作时间数
//sDay为指定日期
public static string getEfDay(DateTime sDay)
{
//定义要返回的总天数
int num = 0;
//定义法定假日
string[] holiday = new string[10];
holiday[0] = "2010/1/1";
holiday[1] = "2010/2/15";
holiday[2] = "2010/2/16";
holiday[3] = "2010/2/17";
holiday[4] = "2010/5/3";
holiday[5] = "2010/6/16";
holiday[6] = "2010/9/22";
holiday[7] = "2010/10/1";
holiday[8] = "2010/10/4";
holiday[9] = "2010/10/5";
DateTime initDay = new DateTime(sDay.Year,1,1);
initDay = initDay.AddDays(1);
while (initDay <= sDay)
{
//首先判断是否是法定假日
bool flag = false;
for (int i = 0; i < holiday.Length; i++)
{
if (initDay.ToString("yyyy-MM-dd") == Convert.ToDateTime(holiday[i]).ToString("yyyy-MM-dd"))
{ flag = true; break; }
}
if (!flag)
{
if (initDay.DayOfWeek.ToString() != "Saturday" && initDay.DayOfWeek.ToString() != "Sunday")
{
num++;
}
}
initDay = initDay.AddDays(1);
}
return num.ToString();
}