LTools.SDK для Linux
В этом разделе вы узнаете, как разработать элемент для Primo RPA Studio на Linux. Чтобы создать элемент, вам понадобится интегрированная среда разработки Visual Studio (IDE).
Вам будет легче, если вы уже разрабатывали элементы для Primo RPA Studio на Windows, поскольку процесс отличается незначительно.
Начало работы
Создайте проект в Visual Studio:
Запустите Visual Studio и выберите Создание проекта (Create a new project).
Выберите шаблон проекта Библиотека классов (Class Library) и нажмите Далее.
В названии проекта обязательно укажите префикс Primo.. Пример:
Primo.Test
.Далее выберите фреймворк .NET 6.0 и нажмите Создать.
В меню Visual Studio выберите Проект > Добавить ссылку на проект.... В открывшемся окне нажмите кнопку Обзор... и откройте каталог установки Primo RPA Studio под Linux. Добавьте из него в свой проект следующие файлы:
LTools.Common.dll
LTools.Dto.dll
LTools.Enums.dll
LTools.Scripting.dll
LTools.SDK.dll
Primo.UIControls.dll
Перейдите в панель инструментов Обозреватель решений (Solution Explorer), вызовите контекстное меню проекта и выберите Управление пакетами NuGet. Установите следующие сборки:
Avalonia 0.10.18
Avalonia.Desktop 0.10.18
Avalonia.Diagnostics 0.10.18
Avalonia.Xaml.Behaviors 0.10.18
MessageBox.Avalonia 2.1.0
XamlNameReferenceGenerator 1.5.1
Установите расширение Avalonia for Visual Studio. Для этого выберите раздел меню Расширения > Управление расширениями и введите в поисковой строке
Avalonia
для выдачи нужных результатов.
Структура проекта
Для удобства работы с проектом создайте в нем папки*:
Elements — файлы с описанием логики элементов.
Views — визуальные формы элементов.
Images — иконки элементов. Формат png, размер 24x24.
Localization — файлы ресурсов при необходимости.
Пример:
*Вы можете использовать другие папки и названия в своем проекте.
Создание элемента
Для создания элемента Primo вам понадобится:
Впоследствии вы можете установить ваш NuGet-пакет в Primo RPA Studio на Linux, чтобы добавить элемент в среду RPA-разработки.
Шаг 1. Создаем визуальную часть элемента Primo
Вызовите контекстное меню папки Views, выберите Добавить > Создать элемент > User Control (Avalonia).
В поле Имя укажите его название. Пример:
WriteInConsoleBase.axaml
.Нажмите кнопку Добавить.
Готово — вы создали компонент, который является визуальной составляющей элемента Primo. Данные будущего элемента автоматически будут смаплены на DataContext данного контролла.
Работа с файлом *.axaml.cs
При создании файла *.axaml также автоматически добавится файл *.axaml.cs. Откройте в рабочей области файл *.axaml.cs
, измените в нем класс с UserControl на PrimoUserControl из clrnamespace:LTools.Common.UIElements;assembly=LTools.Common
.
Например, мы открыли файл WriteInConsoleBase.axaml.cs
и изменили в нем класс:
Работа с файлом *.axaml
Откройте в рабочей области ваш файл *.axaml
. Смените в нем класс с UserControl на PrimoUserControl из clrnamespace:LTools.Common.UIElements;assembly=LTools.Common
.
Например, мы открыли файл WriteInConsoleBase.axaml
и изменили в нем класс:
Теперь спроектируйте визуальный облик элемента Primo. Подумайте, какие вы хотите увидеть на панели элемента поля, кнопки и т.д.
В соответствии с вашим дизайном создайте сетку (Grid). Например, мы хотим создать простой элемент с полем для ввода данных и кнопкой «Установить шаблон»:
Пример созданной панели элемента Primo:
Шаг 2. Создаем программную часть элемента Primo
Вызовите контекстное меню папки Elements, выберите Добавить > Создать элемент > Класс C#. Укажите имя класса, например, WriteInConsole.cs
. Данный класс будет содержать программную часть (code-behind) элемента Primo, описывать его логику.
Для создания элемента:
с синхронным поведением необходимо унаследовать класс
LTools.SDK.PrimoComponentSimple<UI>
.с тайм-аутом необходим класс
LTools.SDK.PrimoComponentTO<UI>
.
Где <UI>
– это имя визуальной части элемента Primo.
Дополнительно о том, как создать:
Например, мы создаем синхронный элемент Primo:
Шаг 3. Связываем две части элемента Primo
Привяжите данные к UI. Для изменения значения вашего свойства в визуальной части элемента используйте Binding.
Пример для нашего элемента WriteInConsoleBase:
Шаг 4. Собираем проект
В панели Обозреватель решений вызовите контекстное меню решения и выберите Собрать решение. В результате сборки будет получена библиотека Primo.<Название вашей библиотеки>.dll
Шаг 5. Упаковываем библиотеку в NuGet-пакет и публикуем
Опубликованный NuGet-пакет вы можете затем установить в свою Студию на Линукс при помощи Менеджера зависимостей:
Элементы из вашей библиотеки появятся на панели «Элементы». Например, наш элемент отобразился так:
Он обладает следующими свойствами:
Дополнительно
Last updated