Workset Class

Represents a workset in the document.
Inheritance Hierarchy
SystemObject
  Autodesk.Revit.DBWorksetPreview
    Autodesk.Revit.DBWorkset

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public class Workset : WorksetPreview

The Workset type exposes the following members.

Properties
 NameDescription
Public propertyId Id of the workset.
(Inherited from WorksetPreview)
Public propertyIsDefaultWorkset Whether the workset is the default one.
(Inherited from WorksetPreview)
Public propertyIsEditable Whether the workset is editable.
Public propertyIsOpen Whether the workset is open (rather than closed).
Public propertyIsValidObject Specifies whether the .NET object represents a valid Revit entity.
(Inherited from WorksetPreview)
Public propertyIsVisibleByDefault Whether the workset is visible by default.
Public propertyKind Kind of the workset.
Public propertyName Name of the workset.
(Inherited from WorksetPreview)
Public propertyOwner User name of the workset.
(Inherited from WorksetPreview)
Public propertyUniqueId UniqueId of the workset.
(Inherited from WorksetPreview)
Top
Methods
 NameDescription
Public methodStatic memberCode exampleCreate Creates a new workset.
Public methodDispose
(Inherited from WorksetPreview)
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Remarks
Worksets are a way to divide a set of elements in the Revit document into subsets for worksharing. There may be one or many worksets in a document. Each element in the document must belong to one and only one workset.
Example
public void GetWorksetsInfo(Document doc)
{
    String message = String.Empty;
    // Enumerating worksets in a document and getting basic information for each
    FilteredWorksetCollector collector = new FilteredWorksetCollector(doc);

    // find all user worksets
    collector.OfKind(WorksetKind.UserWorkset);

    // get information for each workset
    int count = 3;  // show info for 3 worksets only
    foreach (Workset workset in collector)
    {
        message += "Workset : " + workset.Name;
        message += "\nUnique Id : " + workset.UniqueId;
        message += "\nOwner : " + workset.Owner;
        message += "\nKind : " + workset.Kind;
        message += "\nIs default : " + workset.IsDefaultWorkset;
        message += "\nIs editable : " + workset.IsEditable;
        message += "\nIs open : " + workset.IsOpen;
        message += "\nIs visible by default : " + workset.IsVisibleByDefault;

        TaskDialog.Show("GetWorksetsInfo", message);

        if (0 == --count)
            break;
    }
}
See Also