Failure |
Creates an instance of a FailureDefinition.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)

public static FailureDefinition CreateFailureDefinition(
FailureDefinitionId id,
FailureSeverity severity,
string messageString
)
Parameters
- id FailureDefinitionId
- Unique identifier of the failure.
- severity FailureSeverity
- The severity of the failure. Cannot be FailureSeverity::None.
- messageString String
- A user-visible string describing the failure.
Return Value
FailureDefinitionThe created FailureDefinition instance.

Exception | Condition |
---|---|
ArgumentException | The id of failure definition is not valid. -or- The id of failure definition is already used to register another FailureDefinition. -or- The severity of failures cannot be FailureSeverity::None. -or- Message string is empty or contains invalid characters. |
ArgumentNullException | A non-optional argument was null |
ArgumentOutOfRangeException | A value passed for an enumeration argument is not a member of that enumeration |

The newly created FailureDefinition will be added to the FailureDefinitionRegistry. Because FailureDefinition could only be registered when Revit starting up, this function cannot be used after Revit has already started. Throws InvalidOperationException if invoked after Revit start-up is completed.

// define a new failure id for a warning about walls
FailureDefinitionId warnId =
new FailureDefinitionId(new Guid("FB4F5AF3-42BB-4371-B559-FB1648D5B4D1"));
// register the new warning using FailureDefinition
FailureDefinition failDef = FailureDefinition.CreateFailureDefinition(warnId,
FailureSeverity.Warning,
"Wall is too big (>100'). Performance problems may result.");
