问题描述
我有两个 Revit 模型文件,A 和 B,其中 B 链接到 A。我想通过 Autodesk.Forge API 将文件上传到 BIM360 Docs 并保持链接,以便我可以在当我随后查看模型 A 时伪造模型查看器。
我将这两个文件放在一个 zip 文件中,但据我所知,我不应该上传 zip 文件,而是分别上传 A 和 B,然后在它们之间创建关系。
我可以毫无问题地上传文件,然后我尝试通过此代码链接它们(使用 A 和 B 的非编码版本 ID):
public async Task SetLinkedFileRelationship(string projectId,string versionId,string linkedVersionId)
{
BaseAttributesExtensionObject baseAttribute = new BaseAttributesExtensionObject("auxiliary:autodesk.core:Attachment","1.0");
CreateRefDataMeta Meta = new CreateRefDataMeta(baseAttribute);
CreateRefData createRefData = new CreateRefData(CreateRefData.TypeEnum.Versions,linkedVersionId,Meta);
CreateRef createRef = new CreateRef(new JsonApiVersionjsonapi(JsonApiVersionjsonapi.VersionEnum._0),createRefData);
VersionsApi versionsApi = new VersionsApi { Configuration = { Accesstoken = _token.Accesstoken } };
await versionsApi.PostVersionRelationshipsRefAsync(projectId,versionId,createRef);
}
...产生此响应:
status: 400
code: FUNCTION_NOT_SUPPORTED
detail: BIM360 currently does not support the creation of refs.
所以显然我无法像这样在 A 和 B 之间创建链接。有没有另一种方法来完成我想要的,或者目前在 BIM360 中这是不可能的?我知道您可以通过 BIM360 Docs 网页(使用上传文件 -> 链接文件按钮)来完成,但是当我通过 API 上传模型文件时是否可能?如果是这样,配方是什么?
请记住,我的问题是使用 Autodesk.Forge API (v2) 上传到 BIM360 Docs。我知道这篇文章:BIM360 Docs: Setting up external references between files (Upload Linked Files),但它的目标是手动编写请求。我希望能够使用 v2 API。