C# как получить доступ к закрытым членам NCrontab?

Как получить доступ к закрытым членам NCrontab?

string time_A = "20,25,30 20 * * 1-5";
var schedule = NCrontab.CrontabSchedule.Parse(time_A);

Я вижу непубличных членов "расписания" из отладки,

но я хочу получить значение _day и _hours.

  • _days {*} NCrontab.CrontabField
  • _daysOfWeek {1-5} NCrontab.CrontabField
  • _hours {20} NCrontab.CrontabField
  • _minutes {20,25,30} NCrontab.CrontabField
  • _months {*} NCrontab.CrontabField _секунд null NCrontab.CrontabField

Из того, что мне нужно получить доступ к непубличному элементу (выделенному элементу) поля со списком, похоже, он не работает для следующей строки.

PropertyInfo highlightedItemProperty = schedule.GetType().GetProperties(BindingFlags.NonPublic  | BindingFlags.Instance).Single(pi => pi.Name == "_days");

Пожалуйста, порекомендуйте.

Обновлено!!!

Я могу это исправить сейчас.

string time_A = "20,25,30 18-22 * * 1-5";
var schedule = CrontabSchedule.Parse(time_A);
var bindingFlags = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance;
var field = schedule.GetType().GetField("_hours", bindingFlags);
var getfield = field.GetValue(schedule);

0 ответов

Другие вопросы по тегам