使用 c# 读取和导出计划多个 revit 文件 api
read and export schedules multiple revit file using c# api
我在一个文件夹中有 150 个 revit 文件。我想编写 c# 控制台应用程序,为文件夹中的每个 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 上的 material 的开头有完整介绍。
此外,您很幸运,因为您描述的功能是由 The Schedule API and Access to Schedule Data 中 The Building Coder 描述的现有示例实现的。
我在一个文件夹中有 150 个 revit 文件。我想编写 c# 控制台应用程序,为文件夹中的每个 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 上的 material 的开头有完整介绍。
此外,您很幸运,因为您描述的功能是由 The Schedule API and Access to Schedule Data 中 The Building Coder 描述的现有示例实现的。