Дата.NET Выдерживает сравнение: Считать сумму рабочих дней начиная с даты?

ContentType должен быть '' application / json; charset = utf-8 ", и вы не можете публиковать файлы, как вы делаете. Я думаю, что данные: JSON.stringify (personfoods); должны работать для остальных свойств.

11
задан Matias Nino 3 October 2008 в 06:21
поделиться

6 ответов

Это сделает то, к чему Вы хотите это. Должно быть достаточно легко преобразовать в VB.NET, это было слишком длинно для меня, чтобы смочь сделать это все же.

DateTime start = DateTime.Now;
DateTime end = start.AddDays(9);
IEnumerable<DateTime> holidays = new DateTime[0];

// basic data
int days = (int)(end - start).TotalDays;
int weeks = days / 7;

// check for a weekend in a partial week from start.
if (7- (days % 7) <= (int)start.DayOfWeek)
    days--;
if (7- (days % 7) <= (int)start.DayOfWeek)
    days--;

// lose the weekends
days -= weeks * 2;

foreach (DateTime dt in holidays)
{
    if (dt > start && dt < end)
        days--;
}
16
ответ дан 3 December 2019 в 01:30
поделиться

Самый легкий путь - вероятно, что-то как

DateTime start = new DateTime(2008, 10, 3);
DateTime end = new DateTime(2008, 12, 31);
int workingDays = 0;
while( start < end ) {
  if( start.DayOfWeek != DayOfWeek.Saturday
   && start.DayOfWeek != DayOfWeek.Sunday ) {
      workingDays++;
  }
  start = start.AddDays(1);
}

Это не может быть самым эффективным, но это действительно позволяет, чтобы легкое проверило списка праздников.

13
ответ дан 3 December 2019 в 01:30
поделиться

DateDiff наряду с некоторыми другая Дата* функции уникальны для VB.NET и часто предмета зависти от разработчиков C#. Не уверенный это будет очень полезно в этом случае, все же.

3
ответ дан 3 December 2019 в 01:30
поделиться

в целом (никакой код) -

  • вычтите даты для получения количества дней
  • разделитесь на 7 для получения числа недель
  • вычтите количество недельных раз 2
  • считайте количество праздничных дат, которые падают с диапазоном дат
  • вычтите то количество

скрипка с запуском/датами окончания так, чтобы они упали с понедельника по понедельник, затем добавьте назад различие

[извинения за общие места без кодов, поздно]

[c.f. endDate. Вычтите (startDate).TotalDays]

2
ответ дан 3 December 2019 в 01:30
поделиться

Вот метод для SQL Server. На странице существует также vbscript метод. Не точно, что Вы попросили, я знаю.

1
ответ дан 3 December 2019 в 01:30
поделиться

Мы объединили две статьи CodeProject, чтобы найти полное решение. Наша библиотека не достаточно кратка для регистрации как исходный код, но я могу указать на Вас на эти два проекта, мы раньше достигали того, в чем мы нуждались. Как всегда со статьями CodeProject, прочитайте комментарии, может быть важная информация в них.

Вычисление бизнеса days:http://www.codeproject.com/KB/cs/busdatescalculation.aspx

Альтернативный рабочий день calc: http://www.codeproject.com/KB/cs/datetimelib.aspx

Вычисление Holidays:http://www.codeproject.com/KB/dotnet/HolidayCalculator.aspx

1
ответ дан 3 December 2019 в 01:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: