Частичная регистрация происходит во время регистрации информации между несколькими классами - PullRequest
0 голосов
/ 02 апреля 2020

Я регистрирую информацию между несколькими классами. Журналы, упомянутые в первом классе, успешно регистрируются там, где журналы, упомянутые во втором классе, не регистрируются.

Вот код.

Класс 1:

   public class Class1 {
            private Logger logger = LogManager.GetCurrentClassLogger();
                logger.Info("Starting Class1 scheduled task.");
                try
                {
                    logger.Info("Starting Class1 scheduled task.Try block entered.");

                    new Class2().Process(context.Credentials, runAsDate);

                    logger.Info("Process method has been called successfully.");
                }
                catch (Exception ex)
                {
                    logger.ErrorException("An exception occurred during the MigrationAddOrder scheduled task.", ex);
                }
                finally
                {
                    logger.Info("MigrationAddOrder scheduled task complete.");
                }
    }

Класс 2 :

    public class Class2
    {
        private Logger logger = LogManager.GetCurrentClassLogger();

        public virtual void Process(string runAsUser, DateTime runAsDate)
        {
            logger.Info("Control has entered Process method for the date: " + runAsDate.ToShortDateString());

                foreach (var order in orderRepository.GetOrders(runAsDate.Date).ToList())
                {
                    logger.Info("Begin processing order. [order id={0}]", order .Id);

                    try
                    {
                        ProcessOrder(order , runAsDate.Date, runAsUser);
                    }
                    catch (Exception ex)
                    {
                        logger.ErrorException(String.Format("Failed processing order. [order id={0}]", order.Id), ex);
                    }
                    finally
                    {
                        logger.Info("Completed processing order. [order id={0}]", order .Id);
                    }
                }
            }
}

Только ниже информация журнала из класса 1 регистрируется в базе данных:

Запуск запланированной задачи Class1. Запуск запланированного задания Class1. Попытка блокировки введена. Метод процесса был успешно вызван. Запланированное задание MigrationAddOrder завершено.

Вопрос:

Почему информация в классе 2 не регистрируется?

Ожидание: с учетом того, что управление не вводится для l oop.

Запуск запланированной задачи Class1. Запуск запланированного задания Class1. Попытка блокировки введена. Элемент управления ввел метод процесса на дату: 18-03-2020 Метод процесса успешно вызван. Запланированное задание MigrationAddOrder выполнено.

...