0

我正在使用 DFS.NET 生产力层 v6.7。

我有变量dataObjectrepoFolderPath. 我想保存dataObject在 path 指定的文件夹中repoFolderPath

我可以通过两种方式做到这一点:

  1. 通过设置 i_folder_id:

    dataObject.Properties.Set<String[]>("i_folder_id", new String[] { repoFolderPath } );
    
  2. 通过使用 DFS .NET API:

    ObjectPath objectPath = new ObjectPath(repoFolderPath);
    ObjectIdentity linkFolderIdentity = new ObjectIdentity(objectPath, repositoryName);
    ReferenceRelationship linkFolderRelationship = new ReferenceRelationship();
    linkFolderRelationship.Name = Relationship.RELATIONSHIP_FOLDER;
    linkFolderRelationship.Target = linkFolderIdentity;
    linkFolderRelationship.TargetRole = Relationship.ROLE_PARENT;
    dataObject.Relationships.Add(linkFolderRelationship);
    

:如果我选择一个高于另一个,除了第一种方法我可以使用i_folder_id和第二种方法我可以使用之外,会有什么不同repoFolderPath?第二组线最终会导致设置i_folder_id,还是会做更多的事情?

显然,为了保存dataObject到存储库,我在这两种情况下都在执行以下操作:

DataPackage dataPackage = new DataPackage(dataObject);
OperationOptions operationOptions = null;
DataPackage resultPackage = objectService.Create(dataPackage, operationOptions);
4

1 回答 1

0

我有 99% 的把握,在这种情况下,当您创建新对象时,这两种方法之间没有区别,但为了您的职业,不要使用第一种方法。

我对新安装的存储库中的关系类型进行了一些研究。没有关系类型可以指示文件夹和与其链接的对象之间的某种连接。这只是巩固了我的假设,即除了 i_folder_id 属性之外,没有其他任何东西可以将对象链接到文件夹。

至于到多个文件夹的链接对象 - 您只需重复为第一个文件夹编写的行。

于 2014-08-13T13:21:25.783 回答