Как я могу опубликовать страницу с помощью API TOM.net?

Можно ли опубликовать страницу с помощью API Tom.net в SDL Tridion 2011?

2 ответа

Решение

Как упомянул Нуно, используйте PublishEngine.Publish и сослаться на синтаксис и пример

Синтаксис:

PublishEngine.Publish(
    new IdentifiableObject[] { linkedComponent },
    engine.PublishingContext.PublishInstruction,
    new List() { engine.PublishingContext.PublicationTarget }); 

Сделайте что-то вроде этого:

private void Publish(IdentifiableObject item, PublicationTarget publicationTarget, bool rollBackOnFailure, bool includeComponentLinks)
{
    IEnumerable<IdentifiableObject> items = new List<IdentifiableObject>() { item };    
    IEnumerable<PublicationTarget> targets = new List<PublicationTarget>() { publicationTarget };
    PublishInstruction instruction = new PublishInstruction(item.Session)
    {
        DeployAt = DateTime.Now,
        RenderInstruction = new RenderInstruction(item.Session)
        {
            RenderMode = RenderMode.Publish
        },
        ResolveInstruction = new ResolveInstruction(item.Session)
        {
            IncludeComponentLinks = includeComponentLinks
        },
        RollbackOnFailure = rollBackOnFailure,
        StartAt = DateTime.MinValue
    };
    PublishEngine.Publish(items, instruction, targets);
}

** Содержание скопировано из блога " Как публиковать материалы программно"

Использование PublishEngine.Publish, следуйте за Intellisense оттуда. Вам нужно будет предоставить инструкции по визуализации и разрешению, а также обычные детали, такие как цель, дата / время начала и т. Д.

В документации есть примеры, в разных блогах есть примеры, и Visual Studio должна помочь вам найти то, что вам нужно.

Другие вопросы по тегам