Каждая платформа реализации оперирует нативными типами своих данных. Для обеспечения кроссплатформенности и передачи сложных объектов между разными системными компонентами выполняется приведение нативных типов к кроссплатформенным DTO Robin-типам - типам объектов передаваемых данных.
Ниже представлен список Robin-типов, возможность их сериализации и соответствие нативным типам для каждой платформы. Приведение нативных типов к Robin-типам выполняется с помощью Robin-конверторов.
В колонке "Чем является нативный тип внутри .NET" есть 3 варианта типов:
- Нативный тип
Пример (net): System.Collections.Generic.List, string и др.- Для коллекций System.Collections.Generic.List:
List<object> Services = (List<object>)parameters["Services"]; - Для словарей System.Collections.Generic.Dictionary<string, object>:
Dictionary<string, object> options= (Dictionary<string, object>)parameters["Options"];
- Для коллекций System.Collections.Generic.List:
В этом случае необходимо приводить к тому типу, который указан в столбце. Примеры (net):
2. DTO. Пример (net):
Robin.Type.RobinFilePath
Nuget
Robin.Type.FilePath.2.0.0
В этом случае необходимо сначала добавить указанный Nuget-пакет в проект. Далее выполнить приведение в следующем формате (пример для net):
- Путь к файлу:
var pathToFile = ((RobinFilePath) parameters["Path2File"])
- Web-элемент:
var webElement = ((RobinWebElement) parameters["CoolElementName"])
Если указан прочерк, значит используемый тип – контекст. В этом случае необходимо также сначала добавить указанный Nuget-пакет в проект. Далее выполнить приведение в следующем формате (пример для net):
var xmlContext = (XmlContext)parameters["XML_INSTANCE"].
Тип данных | Описание | Используемый тип C# | Чем является нативный тип внутри .NET |
Последовательность действий | |||
Логический | System.Boolean | Нативный тип bool | |
Чат-бот | |||
Коллекция | System.Collections.Generic.List<object> | Нативный тип System.Collections.Generic.List | |
Таблица | System.Data.DataTable | Нативный тип System.Data.DataTable | |
Дата-время | System.DateTime | Нативный тип System.DateTime | |
Словарь | System.Collections.Generic.Dictionary<string, object> | Нативный тип System.Collections.Generic.Dictionary<string, object> | |
База данных | |||
Почта | - | ||
Документ Excel | - | ||
Исключение | DTO Robin.SDK.Types.Interfaces.RobinException Nuget Robin.SDK.Actions.1.3.0 | ||
Путь к файлу | Robin.Types.RobinFilePath | DTO Robin.Type.RobinFilePath Nuget Robin.Type.FilePath.2.0.0 | |
Путь к папке | Robin.Types.RobinFolderPath | DTO Robin.Type.RobinFolderPath Nuget Robin.Type.RobinFolderPath.2.0.0 | |
Протокол переди данных по сети | |||
Google документы | |||
Google Drive - хранилище | |||
Горячие клавиши | Robin.Types.RobinHotKeys | DTO Robin.Type.RobinHotKeys Nuget Robin.Type.RobinHotKeys.2.0.0 | |
Изображение | Robin.Types.RobinImage | DTO Robin.Type.RobinImage Nuget Robin.Type.RobinImage.2.0.0 | |
Внутренний идентификатор последовательности | Нативный тип string | ||
Доступный узел | |||
Файл JSON | Robin.Types.RobinJSON | ||
Координаты точки | System.Drawing.Point | Нативный тип System.Drawing.Point | |
Очередь | |||
Число | System.Double | ||
Объект | System.Object | Нативный тип object | |
Пароль | Robin.Types.RobinPassword | DTO Robin.Type.RobinPassword Nuget Robin.Type.RobinPassword.2.0.0 | |
Документ PDF | |||
Документ Power Point | |||
Расположение | System.Drawing.Rectangle | ||
Размер | System.Drawing.Size | Нативный тип System.Drawing.Size | |
Для работы с браузером | Нативный тип Object | ||
Электронные таблицы | |||
Строка | System.String | Нативный тип string | |
Tesseract | |||
Веб-элемент | Robin.Types.RobinWebElement | DTO Robin.Type.RobinWebElement Nuget Robin.Type.RobinWebElement.2.0.0 | |
Вин-элемент | Robin.Types.RobinWinElement | DTO Robin.Type.RobinWinElement Nuget Robin.Type.RobinWinElement.2.0.0 | |
Для экземпляра документа Word | |||
Для экземпляра документа XML | |||
Нативный тип System.Xml.XmlDocument |