Работа с сервисом жизненного цикла объектов Web-клиента

Рассмотренные в пунктах Реализация методов для работы с карточками из разметок и Реализация методов для работы со строками секций из разметок компоненты, которые позволяют внести изменения в механизмы создания, изменения и удаления карточек и строк секций из разметок, доступны программисту через специальный сервис ILifeCycleService. Данный сервис определяет методы:

  • GetCardLifeCycle — Возвращает реализацию интерфейса ICardLifeCycle для указанного типа карточек.

  • GetRowLifeCycle — Возвращает реализацию интерфейса IRowLifeCycle для указанной секции.

Следующий код демонстрирует способ получения сервиса ICardLifeCycle и его использования в веб-методе для создания карточки по шаблону:

public class CardServiceController : ApiController
{
    private readonly ILifeCycleService lifeCycleService;

    public CardServiceController(ILifeCycleService lifeCycleService) (1)
    {
        this.lifeCycleService = lifeCycleService;
    }

    [HttpGet]
    public Guid CreateByTemplate(Guid cardTypeId)
    {
        var documentCardLifeCycle = lifeCycleService.GetCardLifeCycle(CardDocument.ID); (2)
        if (templateId != Guid.Empty)
        {
            var newDocumentId = documentCardLifeCycle.CreateFromTemplate(sessionContext, templateId, null); (3)
        }
        return newDocumentId;
    }
}
1 Принимаем требуемый сервис в конструкторе.
2 Получаем интерфейс для работы с карточкой типа CardDocument.
3 Используем метод создания карточки по шаблону.