API Reference: WorkflowAttribute Class

The WorkflowAttribute can be applied to content model classes. The attribute specifies the publication workflow to use for content items of this type in the back office application.

If WorkflowAttribute is not specified, a default publication workflow applies, depending on the node type:
  • Pages have the ApprovalWorkflow selected by default. This workflow allows publication of content to users with the publish permission only. Users without publish permissions must request approval first.
  • Assets have the DirectPublishWorkflow selected by default. This workflow bypasses the approval process and allows users with edit permissions to publish content immediately.
You can specify either one of the built-in workflows or define and set your own custom workflow.

Usage

Decorate the content model class with the WorkflowAttribute. Pass the workflow class type in the attribute constructor. The type must implement IPublicationWorkflow, otherwise, a configuration exception will be thrown at system startup.

Example

[Asset]
[Workflow(ApprovalWorkflow)]  // Overrides the default DirectPublishWorkflow.
public class ApprovalRequiredImage: IContentType
{
    public Media File { get; set; }

    // ...
}