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