Autodesk.Revit.DB.FailuresAccessor是一个Revit API中的类,用于管理和访问Revit中的失败信息。在Revit中执行操作时,可能会出现失败情况,例如用户输入的信息不正确、模型几何错误等等。为了更好地处理这些情况,FailuresAccessor类提供了一种API来识别、记录和处理Revit中的失败信息。
通过FailuresAccessor类可以访问Revit中的所有失败信息,包括警告、错误等。可以使用以下代码获取FailuresAccessor的实例:
FailuresAccessor failuresAccessor = new FailuresAccessor();
然后可以使用AddFailure方法向FailuresAccessor中添加一个失败信息,例如:
var failureMessage = new FailureMessage(FailureSeverity.Warning, failureDefinition);
failuresAccessor.AddFailure(failureMessage);
添加失败信息后,可以使用HasFailure方法判断FailuresAccessor是否包含失败信息:
bool hasFailures = failuresAccessor.HasFailure();
发现有失败信息后,可以使用ResolveFailures方法逐个处理这些失败信息。
failuresAccessor.ResolveFailures();
在处理每个失败信息之前,可以使用GetFailureMessages方法获取FailuresAccessor中的所有失败信息。
IEnumerable<FailureMessageAccessor> failureMessages = failuresAccessor.GetFailureMessages();
此外,FailuresAccessor也可以作为修改事务的一部分来使用。
using (Transaction transaction = new Transaction(document, "Transaction Name"))
{
transaction.Start();
FailuresAccessor failuresAccessor = new FailuresAccessor();
//在此添加失败信息
failuresAccessor.ResolveFailures();
//在此进行Revit中的修改
transaction.Commit();
}
Autodesk.Revit.DB.FailuresAccessor是Revit API中用于管理和处理Revit中的失败信息的类。通过FailuresAccessor,可以访问Revit中的所有失败信息,并对其进行处理。FailuresAccessor可以与修改事务一起使用,以确保在处理失败信息后,可以正确处理修改事务。