Публикация

Remote debug (удалённая отладка)

Делюсь своим подходом к удалённой отладке (Remote Debug).

 

1. Создайте новый проект.
2. Установите WorkspaceConsole на своем веб-сайте.
3. Скопируйте WorkspaceConsole в локальную папку.
4. Добавьте файл TestProcess.cs.
4.1. Установите точку останова в методе Execute.
5. Откройте свойства проекта
5.1. В разделе "Отладка" установите "Запуск внешней программы":
...\VS.Creatio.RemoteDebug\WorkspaceConsole\Terrasoft.Tools.WorkspaceConsole.exe
5.2. В разделе "Отладка" установите "Аргументы командной строки":
-filename="...\VS.Creatio.RemoteDebug\ScriptExecutor\bin\Debug\ScriptExecutor.dll" -typeName=Terrasoft.Configuration.VSMorozov.TestProcess -operation=ExecuteScript -workspaceName=Default -logPath=...\VS.Creatio.RemoteDebug\ScriptExecutor\Logs\ -confRuntimeParentDirectory=...\Terrasoft.WebApp\ -autoExit=false
6. Сделайте Rebuld.
7. Выберите режим Debug, а затем запустите Debug (F5).

using ScriptExecutor;
using System;
using System.Collections.Generic;
using Terrasoft.Core;
using Terrasoft.Core.Entities;
using Terrasoft.Core.Process;
 
namespace Terrasoft.Configuration.VSMorozov
{
    public class TestProcess : IExecutor
    {
        private UserConnection UserConnection { get; set; }
 
        public void Execute(UserConnection userConnection)
        {
            UserConnection = userConnection;
 
            // Make breakpoint here.
            GetEntities();
        }
 
        private void GetEntities()
        {
            EntitySchema entitySchema = UserConnection.EntitySchemaManager.GetInstanceByName("Contact");
            EntitySchemaQuery esq = new EntitySchemaQuery(entitySchema);
            esq.AddAllSchemaColumns();
            EntityCollection collection = esq.GetEntityCollection(UserConnection);
        }
    }
}

PS: Замените ваши пути к каталогам.

PPS: комментарии приветствуются.

Нравится

Поделиться

0 комментариев
Показать все комментарии