Управление жизненным циклом приложений библиотеки компонентов (ALM)

Библиотека компонентов — это специальный тип приложений на основе холста, которые содержат один или более компонентов холста. Затем эти компоненты библиотеки могут использоваться всеми другими приложениями на основе холста в среде. Эта возможность позволяет создавать повторно используемые общие компоненты во всех приложениях в среде, в отличие от компонентов уровня приложения, которые ограничены одним приложением.

Чтобы использовать компонент из библиотеки компонентов, необходимо сначала импортировать компонент в приложение на основе холста. После импорта вы можете добавить компонент на любой экран приложения. Любые обновления в определении компонента из библиотеки компонентов предложат вам просмотреть и включить изменение по требованию или когда приложение открыто для редактирования. Библиотеки компонентов и зависимые приложения также можно перемещать в другую среду с помощью стандартных решений Microsoft Dataverse.

Примечание

В этой статье термин «импорт» относится к импорту компонента из библиотеки компонентов в приложение, и его не следует путать с импортом решения в Dataverse.

Когда компонент из библиотеки компонентов импортируется в приложение на основе холста, определение этого компонента копируется в определение приложения на основе холста. После того, как определение компонента было импортировано, приложение становится «автономным» в том, что касается этого определения компонента. Создатель приложения может выбрать редактировать компонент и создайте локальные экземпляры компонента в приложении. На данный момент нет прямой ссылки на библиотеку компонентов, из которой был создан компонент. Эта характеристика самодостаточности также применяется, если приложение на основе холста затем переносится в другую среду, в которой отсутствует библиотека компонентов. Вы можете продолжать создавать экземпляры определения импортированного компонента в приложениях в целевой среде, и приложения по-прежнему можно будет публиковать и воспроизводить. В этом случае никакие новые обновления не будут запрашиваться или получаться в приложении-потребителе.

Чтобы сохранить взаимосвязь между приложением и библиотекой компонентов, убедитесь, что вы используете библиотеку компонентов для внесения любых изменений в компонент, а не редактируете компонент в приложении-потребителе.

Поддержка приложений на основе холста и библиотек компонентов

В соответствии с другими зависимостями объектов решения, если приложение на основе холста импортирует компонент холста из библиотеки компонентов, оно будет иметь зависимость от этой библиотеки компонентов. Чтобы переместить приложение в новую среду, вам потребуется либо упаковать библиотеку компонентов в том же решении, либо установить ее в качестве предварительного условия. Зависимость приложения от библиотеки компонентов сохраняется в целевой среде. Позже, когда библиотека компонентов с обновленным компонентом будет импортирована с помощью решения в целевую среду, существующие приложения получат новые определения компонентов, используя обычный поток обновления компонента.

Создание и экспорт библиотеки компонентов в решение

Вы можете либо создать библиотеку компонентов непосредственно из решения, либо добавить ее в существующее решение.

Добавление существующей библиотеки компонентов в решение или создание новой.

Когда библиотека компонентов сохраняется в среде, для которой доступно Dataverse, библиотека компонентов автоматически добавляется в решение по умолчанию. Уникальное логическое имя генерируется для библиотеки компонентов с префиксом Издатель CDS по умолчанию. Такое поведение гарантирует, что система решения знает о ее присутствии и может связать зависимости от приложений, использующих логическое имя библиотеки компонентов.

Примечание

Библиотеки компонентов, созданные до развертывания функции ALM библиотеки компонентов, необходимо отредактировать, опубликовать, а редактор необходимо явно закрыть, прежде чем они будут включены для возможностей ALM. Вы можете проверить готовность библиотеки компонентов ALM по ее наличию в решении по умолчанию.

Проверьте решение по умолчанию для наличия вашей библиотеки компонентов.

Библиотеки компонентов внутри решения также поддерживают управляемые свойства Разрешить настройки, которые управляют поведением библиотеки компонентов в целевой среде.

Управляемое средство «Разрешить настройки» для библиотеки компонентов.

Если вы отключите этот параметр и экспортируете решение в целевую среду, вы не сможете редактировать библиотеку компонентов.

Вы не можете редактировать библиотеку компонентов, которая не допускает настройки.

Зависимости библиотеки компонентов

Приложения, использующие компоненты из библиотеки компонентов, будут помечены как зависимые в инфраструктуре решений. Это поведение применяется ко всем приложениям, которые добавляются в любое решение Dataverse в заданной среде. Вы по-прежнему можете создавать приложения вне решений, но эти приложения не будут зависеть от решения. Позже вы можете добавить эти приложения в решения, чтобы сделать их частью решения ALM.

Анимация, показывающая приложение на основе холста в решении с использованием компонента из библиотеки компонентов в том же решении и зависимостей для обоих.

Если вы импортируете решение, в котором есть только приложение, использующее компонент из библиотеки компонентов, но исключающее библиотеку компонентов, вы увидите следующее сообщение:

«Импорт завершился сбоем из-за отсутствующих зависимостей для <app name>»

В этом случае вы можете сначала установить решение библиотеки компонентов или связать библиотеку компонентов с решением, содержащим приложение на основе холста. Любой из шагов гарантирует, что приложение будет иметь зависимость, созданную в целевой среде.

Когда библиотека обновляется и более новая версия компонента импортируется через решения, приложение получит уведомление и получит обновления, когда приложение открыто для редактирования.

Примечание

Если управляемое свойство библиотеки компонентов Разрешить настройки выключено, библиотеку компонентов нельзя редактировать в целевой среде.

Зависимости рассчитываются на основе последнего опубликованного состояния приложения. Если вы восстановите старую версию приложения, в которой не используется библиотечный компонент, зависимость будет удалена из приложения и решения. Импорт компонента в приложение из библиотеки компонентов без его фактического использования также создает зависимость, поскольку неиспользуемый компонент библиотеки остается доступным в приложении для будущего использования.

Совет

Редактирование компонента из библиотеки компонентов внутри потребляющего приложения создает локальную копию. На данный момент компонент библиотеки все еще доступен для использования через панель Вкладка. Чтобы полностью удалить зависимость, удалите компонент из меню Вкладка > Компоненты библиотеки > ... (многоточие) > Удалить из приложения.

Рекомендации и устранение неполадок

  • Ограничьте количество компонентов в библиотеке до 20, чтобы получить оптимальную производительность. Планируйте и создавайте несколько библиотек компонентов заранее, так как количество компонентов в них, вероятно, со временем будет расти. Этот подход также уменьшит полезную нагрузку решения, поскольку приложения перемещаются по среде.

  • Существует задержка между публикацией библиотеки компонентов и ее доступностью для приложения, которая может занимать до 5 минут.

  • Если приложение не может получить обновление от компонента библиотеки в целевой среде, где установлено решение, проверьте, выполнив следующие действия:

    • Изменения, внесенные в библиотеку компонентов в целевой среде, находятся на верхнем уровне компонента. Впоследствии эти настройки определяют поведение компонента во время выполнения. Чтобы удалить эти неуправляемые настройки, см. Удаление неуправляемого слоя.
    • Определите логическое имя библиотеки компонентов из представления решения. Используйте решение по умолчанию, если библиотека не добавлена в решение явно.
    • Загрузите приложение с помощью компонента библиотеки на локальный компьютер, используя меню Файл > Сохранить как > Этот компьютер. Переименуйте загруженный файл, чтобы он имел расширение .zip, и разархивируйте пакет. Открой файл Свойства.json, а затем выполните поиск по ключевому слову «LibraryDependencies». Вы должны увидеть соответствующее логическое имя библиотеки.
    • Если вы используете решение, убедитесь, что приложение на основе холста правильно определило библиотеки компонентов как зависимости решения. Если решение неправильно идентифицирует библиотеки компонентов как зависимости решения, это означает, что зависимость приложения от ссылки на библиотеку компонентов не была создана должным образом. В этом случае обратитесь к поставщику решения, чтобы решить проблему.
    • Если вы издатель решения, убедитесь, что библиотеки компонентов сохранены с логическим именем библиотеки в решении и что оно совпадает с именем, указанным в пакете библиотеки компонентов .msapp.
  • При экспорте решения всегда экспортируется последняя версия библиотеки компонентов. Следовательно, всегда обновляйте приложения последней версией компонента, прежде чем экспортировать их с помощью решений. Это действие гарантирует, что приложения имеют ту же версию компонента, что и в последней версии библиотеки компонентов. Приложения и библиотека считаются синхронизированными друг с другом, когда они впервые перемещаются в целевую среду; и, следовательно, вам не предлагается какое-либо обновление, доступное при редактировании приложения.

См. также

Примечание

Каковы ваши предпочтения в отношении языка документации? Пройдите краткий опрос (обратите внимание, что этот опрос представлен на английском языке).

Опрос займет около семи минут. Личные данные не собираются (заявление о конфиденциальности).