Revit 2025 API
DocumentExport(String, String, ICollectionElement |
Exports a selection of views in DGN format.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public bool Export( string folder, string name, ICollection<ElementId> views, DGNExportOptions options )
Public Function Export ( folder As String, name As String, views As ICollection(Of ElementId), options As DGNExportOptions ) As Boolean
public: bool Export( String^ folder, String^ name, ICollection<ElementId^>^ views, DGNExportOptions^ options )
member Export : folder : string * name : string * views : ICollection<ElementId> * options : DGNExportOptions -> bool
Parameters
- folder String
- Output folder, into which file(s) will be exported. The folder must exist.
- name String
- Either the name of a single file or a prefix for a set of files. If empty, automatic naming will be used. If , throw ArgumentException.
- views ICollectionElementId
- Selection of views to be exported. The set must contain at least one valid view.
- options DGNExportOptions
- Various options applicable to the DGN format. If , all options will be set to their respective default values.
Return Value
BooleanTrue if successful, otherwise False.

Exception | Condition |
---|---|
ArgumentException | NullOrEmpty -or- Contains invalid characters. -or- non empty list of views must be provided. -or- some of the views are not printable (exportable). -or- Thrown when the options in DGNExportOptions is invalid. |
ArgumentNullException | A non-optional argument was null |
DirectoryNotFoundException | Thrown when the directory does not exist. |
InvalidOperationException | Export is temporarily disabled. -or- Exporting is not allowed in the current application mode. |
InvalidPathArgumentException | The folder does not exist. |
OptionalFunctionalityNotAvailableException | The DWG module is not available in the installed Revit. -or- The Graphics module is not available in the installed Revit. |

All the views must be printable for the Export to succeed.
It can be assured by checking the CanBePrinted property of each view.

public bool ExportDGN(Document document, View view) { bool exported = false; // Get predefined setups and use the first one IList<string> setupNames = BaseExportOptions.GetPredefinedSetupNames(document); if (setupNames.Count > 0) { // Get predefined options for first predefined setup DGNExportOptions dgnOptions = DGNExportOptions.GetPredefinedOptions(document, setupNames[0]); // export the active view if it is printable if (view.CanBePrinted == true) { ICollection<ElementId> views = new List<ElementId>(); views.Add(view.Id); exported = document.Export(Path.GetDirectoryName(document.PathName), Path.GetFileNameWithoutExtension(document.PathName), views, dgnOptions); } } return exported; }
Public Function ExportDGN(document As Document, view As View) As Boolean Dim exported As Boolean = False ' Get predefined setups and use the first one Dim setupNames As IList(Of String) = BaseExportOptions.GetPredefinedSetupNames(document) If setupNames.Count > 0 Then ' Get predefined options for first predefined setup Dim dgnOptions As DGNExportOptions = DGNExportOptions.GetPredefinedOptions(document, setupNames(0)) ' export the active view if it is printable If view.CanBePrinted = True Then Dim views As ICollection(Of ElementId) = New List(Of ElementId)() views.Add(view.Id) exported = document.Export(Path.GetDirectoryName(document.PathName), Path.GetFileNameWithoutExtension(document.PathName), views, dgnOptions) End If End If Return exported End Function
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also