2025 Class
Changes 1
C

CheckoutElementsRequestTooLargeException

Description:
Exception is thrown when too many elements are requested for checkout
Inheritance Hierarchy:
System.Object
  System.Exception
    Autodesk.Revit.Exceptions.ApplicationException
      Autodesk.Revit.Exceptions.CentralModelException
        Autodesk.Revit.Exceptions.CheckoutElementsRequestTooLargeException
[SerializableAttribute]
public class CheckoutElementsRequestTooLargeException : CentralModelException
void HandleCheckoutElementsRequestTooLargeException(Document doc)
{
   FilteredElementCollector collector = new FilteredElementCollector(doc);
   ICollection<ElementId> rooms = collector.WherePasses(new RoomFilter()).ToElementIds();

   try
   {
      ICollection<ElementId> checkoutelements = WorksharingUtils.CheckoutElements(doc, rooms);
   }
   catch (Autodesk.Revit.Exceptions.CheckoutElementsRequestTooLargeException)
   {
      IEnumerable<WorksetId> worksets = rooms.Select(elemId => doc.GetWorksetId(elemId)).Distinct();

      TaskDialog dlg = new TaskDialog("Elements can't be checked out")
      {
         MainInstruction = $"You are trying to check out a large number of elements. Instead check out the following {worksets.Count()} worksets:",
         MainContent = string.Join(", ", worksets),
      };
      dlg.Show();

      TransactWithCentralOptions twcOptions = new TransactWithCentralOptions();
      ISet<WorksetId> worksetsCheckedout = WorksharingUtils.CheckoutWorksets(doc, worksets.ToHashSet(), twcOptions);

      TaskDialog.Show(
            title: "Worksets are checked out",
            mainInstruction: $"{worksetsCheckedout.Count} worksets are checked out.");
   }
}
Name Return Type Description Inherited From
M Equals None Determines whether the specified object is equal to the current object. (Inherited from Object ) Object
M GetBaseException None When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions. (Inherited from Exception ) Exception
M GetHashCode None Serves as the default hash function. (Inherited from Object ) Object
M GetObjectData(SerializationInfo, StreamingContext) None Retrieves data needed to serialize the target object. (Overrides CentralModelException . GetObjectData(SerializationInfo, StreamingContext) )
M GetType None Gets the runtime type of the current instance. (Inherited from Exception ) Exception
M ToString None Creates and returns a string representation of the current exception. (Inherited from Exception ) Exception
Name Return Type Description Inherited From
P Data None Gets a collection of key/value pairs that provide additional user-defined information about the exception. (Inherited from Exception ) Exception
P FunctionId FunctionId The information of the function throwing the exception. (Inherited from ApplicationException ) ApplicationException
P HelpLink None Gets or sets a link to the help file associated with this exception. (Inherited from Exception ) Exception
P HResult None Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception. (Inherited from Exception ) Exception
P InnerException None Gets the Exception instance that caused the current exception. (Inherited from Exception ) Exception
P Message None Gets a message that describes the current exception. (Inherited from Exception ) Exception
P Source None Gets or sets the name of the application or the object that causes the error. (Inherited from Exception ) Exception
P StackTrace None Gets a string representation of the immediate frames on the call stack. (Inherited from Exception ) Exception
P TargetSite None Gets the method that throws the current exception. (Inherited from Exception ) Exception