Back-end отладка — отладка схем C#-кода, например, существующих базовых схем, пользовательских конфигурационных классов, веб-сервисов и т. д.
Выполнить back-end отладку
Для выполнения отладки схем C#-кода используйте интегрированные функции отладки внешних IDE, например, Visual Studio Code.
Действия, которые позволяют выполнять отладчики внешних IDE:
- Приостановить выполнение методов.
- Проверить значения переменных.
- Изменить значения переменных.
Рассмотрим выполнение back-end отладки на примере внешней IDE Visual Studio Code.
Условия для выполнения отладки с использованием Visual Studio Code:
- Используется Creatio on-site.
- Отключен режим разработки в файловой системе.
- В Visual Studio Code включен признак Suppress JIT Optimization (меню Options —> пункт Debugging —> блок General). Это позволяет контролировать значения переменных в процессе отладки. Подробнее об оптимизированном и неоптимизированном коде при отладке можно узнать из официальной документации Visual Studio.
Чтобы выполнить back-end отладку:
- Выгрузите схемы C#-кода в файлы локального каталога.
- Создайте проект в Visual Studio Code для отладки.
- Добавьте выгруженные файлы в проект Visual Studio Code.
- Подключите проект к рабочему процессу сервера IIS и выполните отладку.
Решение проблем отладки
Решение:
- Завершить выполнение отладки (меню Debug —> пункт Stop Debugging).
- Закрыть файл с исходным кодом, для которого выполняется отладка.
- В разделе Конфигурация (Configuration) приложения выполнить действие Компилировать все (Compile all).
- Во время выполнения компиляции и перевыгрузки файлов с исходными кодами заново подключить проект к процессу IIS.
- После выполнения компиляции переоткрыть файл с исходным кодом, для которого выполняется отладка.
Также можно выполнить повторную компиляцию без закрытия файла и повторного подключения проекта к процессу IIS.
Решение:
- Нажать кнопку No для запрета нормализации символов. Если нажать кнопку Yes для нормализации символов, то точка останова снова может стать неактивной.
- Выполнить один из предложенных вариантов решения проблемы из подсказки, где также отображается причина проблемы (несоответствие версий файла).
1. Выгрузить схемы C#-кода в файлы локального каталога
-
Измените конфигурационные файлы приложения для выполнения отладки.
-
В конфигурационном файле Web.config, который находится в корневом каталоге приложения, для атрибута debug элемента <compilation> установите значение true.
Сохраните файл.
-
В конфигурационном файле Web.config, который находится в каталоге ...\Terrasoft.WebApp, укажите следующие значения:
- IncludeDebugInformation — "true".
- ExtractAllCompilerSources — "true" (если необходимо выгружать все схемы при выполнении действия Компилировать (Compile) раздела Конфигурация (Configuration)) или "false" (если необходимо выгружать только измененные схемы, значение по умолчанию).
Сохраните файл.
-
-
В разделе Конфигурация (Configuration) выполните действие Компилировать все (Compile all ).
В результате компиляции в каталог ../Terrasoft.WebApp/Terrasoft.Configuration/Autogenerated/Src будут выгружены файлы с исходными кодами конфигурационных схем приложения, а также конфигурационные библиотеки, их модули и файлы с отладочной информацией (файлы с расширением *.pdb). Исходные коды схем заново выгружаются при каждой компиляции приложения.
Формат имен файлов выгруженных схем: SchemaNameInConfiguration.PackageName_SchemaType.cs (например, Contact.Base_Entity.cs, ContractReport.Base_Report.cs).
2. Создать проект в Visual Studio Code для отладки
Чтобы создать проект в Visual Studio Code для отладки:
-
На панели инструментов Visual Studio нажмите File —> New —> Project.
-
Заполните свойства проекта:
- Тип проекта — выберите "Class Library (.NET Framework)".
- Укажите название проекта.
- Укажите расположение проекта.
- После создания проекта удалите из него файл Class1.cs и сохраните проект.
3. Добавить выгруженные файлы в проект Visual Studio Code
- В контекстном меню проекта в проводнике решения нажмите Add —> Existing Item.
-
В каталоге с выгруженными файлами выберите все файлы.
- Сохраните проект.
4. Подключить проект к рабочему процессу сервера IIS и выполните отладку
-
В меню Visual Studio нажмите Debug —> Attach to process.
-
В списке процессов выберите рабочий процесс IIS, в котором запущен пул приложения Creatio.
По умолчанию рабочий процесс IIS запущен под учетной записью, имя которой совпадает с именем пула приложения. Чтобы отобразить процессы всех пользователей, а не только текущего, установите признак Show processes from all users.
-
Откройте файл с исходным кодом и установите точку останова.
Как только будет задействован метод, на котором установлена точка останова, выполнение программы останавливается. После остановки можно проверить текущее состояние переменных и выполнить трассировку кода.