我发现旧的 VBScript API 和 .Net API 之间有以下区别:
在旧的 VBScript API 中,可以调用“TDSE.getObject”来检索通过 webdav 路径传递的 Tridion 对象、一个整数来选择如何打开它(只读、读取和写入等)以及发布位置的 ID有我们想要的蓝图的确切元素。
在新的 .Net API 中,我发现的只是“Engine.GetObject”,但它只接收 TCM ID 或元素的 webdav 路径。
我们的场景如下;在旧的 VBScript 代码中,getObject 方法的这种重载被用来避免在使用 TCM ID 而不是 webdav 路径时检测到的一些权限问题,并且因为当您需要在不同环境之间复制代码时,它会更加少见(参见 DEV,PREPROD和 PROD 例如),避免更改 TCM ID。
所以我的问题是:
- 新的 .Net API 中是否存在和旧的一样的过载?
- 如果没有,是否有办法通过 webdav 检索项目,记住其中一些可以本地化并从其父项更改?(旧方法适用于此,如果您发送根 webdav 路径,它将检索本地对象,即使它们的名称与父对象不完全相同)
谢谢!