Примечание
Функция доступна по запросу в поддержку: support@timetta.com.
Важно
Компонента позволяет кастомизировать логику работы с данными:
Если вам нужно переопределение логики, рекомендуем обратиться в поддержку support@timetta.com для платной консультации.
Платформа предоставляет механизм динамического кода, позволяющий расширять стандартную логику системы.
Динамический код может выполняться в следующих сценариях:
Все эти сценарии используют единый базовый контекст — DynamicCodeContext.
Динамический код компилируется и выполняется не как обычный проект C#, а в ограниченном окружении.
Это означает, что в обработчиках, резолверах ролей и заданиях по расписанию доступно только разрешённое подмножество API платформы и .NET.
В динамическом коде можно:
объявлять классы и реализовывать требуемые интерфейсы платформы;
использовать базовые типы .NET:
System;System.Collections.Generic;System.Linq;System.Linq.Expressions;System.Threading.Tasks;System.Text.Json;выполнять асинхронный код через async/await;
использовать API контекста:
using;namespace;В платформе предусмотрен механизм проверки запрещённых API. Даже если часть проверок сейчас не применяется на этапе компиляции, на динамический код распространяются ограничения по архитектуре и безопасности.
При публикации код проходит проверку ИИ-агентом для предотвращения системных ошибок.
Динамический код должен оставаться компактным и предсказуемым. Следующие конструкции не рекомендуются и могут не скомпилироваться:
Task.Delay).На практике это означает, что динамический код должен содержать простую прикладную логику, а не сложные вычислительные алгоритмы.
Хороший динамический код:
Динамический код — это не полноценная замена обычной серверной разработки, а механизм для безопасного расширения бизнес-логики платформы.
Подходящие сценарии:
Неподходящие сценарии:
Перейти на русскую версию?