如何通过 .NET 在 BIM 360 上创建文件夹

Posted

技术标签:

【中文标题】如何通过 .NET 在 BIM 360 上创建文件夹【英文标题】:How to create a folder on BIM 360 though .NET 【发布时间】:2019-06-21 13:51:03 【问题描述】:

我目前正在尝试在Plans ***文件夹中创建一个名为“NET 文件夹”的文件夹。使用我的方法,程序崩溃并输出:

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

下面的代码是我目前使用的:

CreateFolderDataRelationshipsParentData createFolderRelationshipsParentData = new CreateFolderDataRelationshipsParentData(
    "folders",
    parentFolderId);
CreateFolderDataRelationshipsParent createFolderDataRelationshipsParent = new CreateFolderDataRelationshipsParent(createFolderRelationshipsParentData);
CreateFolderDataRelationships createFolderDataFolderRelationships = new CreateFolderDataRelationships(createFolderDataRelationshipsParent);
BaseAttributesExtensionObjectWithoutSchemaLink baseAttribute = new BaseAttributesExtensionObjectWithoutSchemaLink(
    "folders:autodesk.bim360:Folder",
    "1.0",
    folderInfo.Value.attributes.extension.data);
CreateFolderDataAttributes createFolderDataAttributes = new CreateFolderDataAttributes("NET Folder", baseAttribute);
CreateFolderData createFolderData = new CreateFolderData(createFolderDataAttributes, createFolderDataFolderRelationships);
CreateFolder createFolder = new CreateFolder(new JsonApiVersionJsonapi(JsonApiVersionJsonapi.VersionEnum._0), createFolderData);

folderApi.PostFolder(projectId, createFolder);

创建名为“NET 文件夹”的文件夹时我缺少什么吗?

【问题讨论】:

您的父文件夹 ID 是否正确?您的代码中的folderInfo 是什么?尝试将null 放入您的BaseAttributes 作为第三个可选参数(数据)。 500 是我们的端点还是您的后端抛出的? 一切都是正确的,除了正在通过的对象主体。 【参考方案1】:

问题是我在BaseAttributesExtensionObjectWithoutSchemaLink 中使用了错误的对象主体。我没有使用folderInfo.Value.attributes.extension.data,而是将其替换为folder.data,然后它就起作用了。

【讨论】:

以上是关于如何通过 .NET 在 BIM 360 上创建文件夹的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Postman 或 .NET 设置 BIM360 项目的状态

如何在 .NET 中获取分配给 BIM360 项目的用户

如何使用 BIM360 存储的 dwfx 文件在网页中实现模型查看器

BIM 360 Docs 如何复制文件

有关 BIM 360 Viewer 扩展和仪表板创建的资源

如何使用 Postman 在 BIM 360 中获取项目的图像?