Работа с сервисом жизненного цикла объектов 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 | Используем метод создания карточки по шаблону. |