Skip to content

GlobalParametersManager.IsUniqueName

Public Class

Tests whether a name is unique among existing global parameters of a given document.

Namespace: Autodesk.Revit.DB

Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)

Syntax

public static bool IsUniqueName(
Document document,
string name
)

Parameters

document Document

Document in which a new parameter is to be added.

nameString

A name of a parameter being added.

Return Value

Boolean
True if the given %name% does not exist yet among existing global parameters nof the document; False otherwise.

Exceptions

Exception

Condition


ArgumentNullException

A non-optional argument was null


Remarks

Typically, this method is used before a new global parameters is created, for all global parameters must have their names unique in the scope of a document.

Example

/// <summary>
/// Creates or finds a global parameter of a given name.
/// </summary>
/// <param name="document">Revit project document.</param>
/// <param name="name">Name of a global parameter.</param>
/// <returns>An Element Id of the global parameter</returns>
public GlobalParameter GetOrCreateAGlobalParameter(Document document, String name)
{
GlobalParameter gp = null;
// Global parameters are not available in all documents.
// They are available in projects, but not in families.
if (GlobalParametersManager.AreGlobalParametersAllowed(document))
{
if (GlobalParametersManager.IsUniqueName(document,name))
{
// if the name is not unique, the global parameter must exist already
gp = document.GetElement(GlobalParametersManager.FindByName(document, name)) as GlobalParameter;
}
else
{
// A global parameter with such a name does not exist yet;
// Let's create a new one (assume the type is Number)
using (Transaction trans = new Transaction(document, "Create Global Parameter"))
{
trans.Start();
gp = GlobalParameter.Create(document,name, SpecTypeId.Number);
trans.Commit();
}
}
}
return gp;
}