Namespace:
Autodesk.Revit.Exceptions
CentralModelVersionArchivedException
Class
Description:
Exception is thrown when last central version merged into the local model has been archived in the central model. Reload Latest or Synchronized with Central needs to be conducted before the current failed operation is retried.
Exception is thrown when last central version merged into the local model has been archived in the central model. Reload Latest or Synchronized with Central needs to be conducted before the current failed operation is retried.
Inheritance Hierarchy:
System.Object
System.Exception
Autodesk.Revit.Exceptions.ApplicationException
Autodesk.Revit.Exceptions.CentralModelException
Autodesk.Revit.Exceptions.CentralModelVersionArchivedException
System.Object
System.Exception
Autodesk.Revit.Exceptions.ApplicationException
Autodesk.Revit.Exceptions.CentralModelException
Autodesk.Revit.Exceptions.CentralModelVersionArchivedException
Syntax
[SerializableAttribute]
public class CentralModelVersionArchivedException : CentralModelException
Examples
void HandleCentralModelVersionArchivedException(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.CentralModelVersionArchivedException)
{
TaskDialog dlg = new TaskDialog("Elements can't be checked out")
{
MainInstruction = "The local model is out of date. Editing is limited to elements and worksets you own.",
MainContent = "To check out elements and worksets owned by others, first reload latest or synchronize with the central model.",
};
dlg.Show();
// Reload Latest, to update the local model to latest version
ReloadLatestOptions rlOptions = new ReloadLatestOptions();
doc.ReloadLatest(rlOptions);
rooms = collector.WherePasses(new RoomFilter()).ToElementIds();
ICollection<ElementId> checkoutelements = WorksharingUtils.CheckoutElements(doc, rooms);
TaskDialog.Show(
title: "Elements are checked out",
mainInstruction: $"{checkoutelements.Count} elements are checked out.");
}
}