首页 > 解决方案 > 如何检查我们是否在设计自动化云上?

问题描述

我在 Forge 的 Design Automation 平台上运行一个插件,但是我也在本地运行它以进行测试。我想要一种方法来检查代码是否在 forge 上运行。

搜索我遇到了这个例子: https ://forge.autodesk.com/blog/how-generate-dynamic-number-output-design-automation-revit-v3

但是if (RuntimeValue.RunOnCloud)我没有设法让它工作(也没有在伪造文档中找到它的任何参考)。

如何检查我是否在 Forge 上运行?

标签: autodesk-forgerevit-apiautodesk-designautomation

解决方案


DAS_WORKITEM_ID设计自动化服务为您的代码设置了一个特殊的环境变量,以便您appbundle在需要时使用它。鉴于此,您应该能够检查是否设置了此变量以确定您的代码是否在 DA 中运行。

    public static string GetWorkitemId()
    {
        return Environment.GetEnvironmentVariable("DAS_WORKITEM_ID");
    }

    public static bool IsRunningInDA()
    {
        return !String.IsNullOrEmpty(GetWorkitemId());
    }

请注意,我们建议对您的 DA appbundle 和 Desktop Revit DB 插件使用相同的代码。谨慎使用此类策略,并尽量减少 DB 插件和 DA appbundle 之间的差异。


推荐阅读