我在一个文件夹中有150个revit文件。我想编写c#console应用程序,为文件夹中的每个revit文件导出计划。
我在论坛中发现了一些样本,但我无法让它发挥作用。
public void Plot(string[] files)
{
ExternalCommandData commandData;
UIApplication uiApplication = commandData.Application;
foreach (string file in files)
{
Document document = uiApplication.OpenAndActivateDocument(@"C:\solar.rvt").Document;
}
}
是。
你无法让它像那样工作。
你无法像这样从外面驾驶Revit。
但是,您可以使用Idling and External Events for Modeless Access and Driving Revit from Outside。
但是,对于您描述的场景,最简单的解决方案是编写一个简单的外部命令,并从Revit内部启动它以驱动所需的功能。莫代尔,不是无模式的。
在getting started with the Revit API的材料开头,很容易实现外部命令并完全覆盖。
此外,您很幸运,因为您描述的功能是由Qazxswpoi的Building Coder描述的现有样本实现的。